Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
后端镜像
java镜像
Springside4
提交
0c47a106
S
Springside4
项目概览
后端镜像
/
java镜像
/
Springside4
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
Springside4
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0c47a106
编写于
9月 21, 2012
作者:
C
Calvin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
琐碎小修改
上级
528b8d06
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
37 addition
and
10 deletion
+37
-10
examples/quickstart/src/test/java/org/springside/examples/quickstart/service/account/AccountServiceTest.java
...amples/quickstart/service/account/AccountServiceTest.java
+16
-1
examples/showcase/src/main/webapp/WEB-INF/layouts/header.jsp
examples/showcase/src/main/webapp/WEB-INF/layouts/header.jsp
+2
-2
examples/showcase/src/main/webapp/WEB-INF/views/story/webservice.jsp
...owcase/src/main/webapp/WEB-INF/views/story/webservice.jsp
+3
-3
modules/core/src/main/java/org/springside/modules/web/Servlets.java
...re/src/main/java/org/springside/modules/web/Servlets.java
+8
-3
modules/core/src/test/java/org/springside/modules/web/ServletsTest.java
...rc/test/java/org/springside/modules/web/ServletsTest.java
+8
-1
未找到文件。
examples/quickstart/src/test/java/org/springside/examples/quickstart/service/account/AccountServiceTest.java
浏览文件 @
0c47a106
...
...
@@ -49,19 +49,34 @@ public class AccountServiceTest {
accountService
.
registerUser
(
user
);
// 验证user的角色,注册日期和加密后的密码都被自动更新了。
assertEquals
(
"user"
,
user
.
getRoles
());
assertEquals
(
currentTime
,
user
.
getRegisterDate
());
assertNotNull
(
user
.
getPassword
());
assertNotNull
(
user
.
getSalt
());
}
@Test
public
void
updateUser
()
{
// 如果明文密码不为空,加密密码会被更新.
User
user
=
UserData
.
randomNewUser
();
accountService
.
updateUser
(
user
);
assertNotNull
(
user
.
getSalt
());
// 如果明文密码为空,加密密码无变化。
User
user2
=
UserData
.
randomNewUser
();
user2
.
setPlainPassword
(
null
);
accountService
.
updateUser
(
user2
);
assertNull
(
user2
.
getSalt
());
}
@Test
public
void
deleteUser
()
{
// 正常删除用户.
accountService
.
deleteUser
(
2L
);
Mockito
.
verify
(
mockUserDao
).
delete
(
2L
);
// 删除超级管理用户抛出异常
.
// 删除超级管理用户抛出异常
, userDao没有被执行
try
{
accountService
.
deleteUser
(
1L
);
fail
(
"expected ServicExcepton not be thrown"
);
...
...
examples/showcase/src/main/webapp/WEB-INF/layouts/header.jsp
浏览文件 @
0c47a106
<%@ page
language=
"java"
pageEncoding=
"UTF-8"
%>
<%@ taglib
prefix=
"shiro"
uri=
"http://shiro.apache.org/tags"
%>
<div
id=
"header"
class=
"row"
>
<div
class=
"span10"
><h1>
Showcase示例
<small>
--开源项目大派对
</small></h1></div>
<div
class=
"pull-right
span2
"
>
<div><h1>
Showcase示例
<small>
--开源项目大派对
</small></h1></div>
<div
class=
"pull-right"
>
<shiro:guest><a
href=
"${ctx}/login"
>
登录
</a></shiro:guest>
<shiro:user>
你好,
<shiro:principal
property=
"name"
/>
<a
href=
"${ctx}/logout"
>
退出登录
</a></shiro:user>
</div>
...
...
examples/showcase/src/main/webapp/WEB-INF/views/story/webservice.jsp
浏览文件 @
0c47a106
...
...
@@ -16,8 +16,8 @@
<h2>
1. 传统SOAP Web Service演示
</h2>
<ul>
<li>
服务端是基于CXF的JAX-WS演示, 见CXF自动生成的
<a
href=
"${ctx}/cxf/"
>
wsdl文件列表
</a>
.
</li>
<li>
客户端见Functional Test用例.
</li>
<li>
服务端是基于CXF的JAX-WS演示, 见CXF自动生成的
<a
href=
"${ctx}/cxf/"
>
wsdl文件列表
</a></li>
<li>
客户端见Functional Test用例
, 或SoapUI工具
.
</li>
</ul>
<h2>
2. 基于JAX-RS实现的Restful演示
</h2>
...
...
@@ -36,7 +36,7 @@
客户端:
<ul>
<li>
RestTemplate设置HttpHeaders的写法,用原始的exchange()方法及用ClientHttpRequestInterceptor两种方法
</li>
<li>
RestTemplate底层使用用默认的JDK HttpConnection,
和
Apache HttpClient4
</li>
<li>
RestTemplate底层使用用默认的JDK HttpConnection,
也可设置为
Apache HttpClient4
</li>
<li>
RestTemplate设置超时控制
</li>
<li>
客户端同样见Functional Test用例UserRestFt.java
</li>
</ul>
...
...
modules/core/src/main/java/org/springside/modules/web/Servlets.java
浏览文件 @
0c47a106
...
...
@@ -163,19 +163,24 @@ public class Servlets {
/**
* 组合Parameters生成Query String的Parameter部分,并在paramter name上加上prefix.
*
* @see #getParametersStartingWith
*/
public
static
String
encodeParameterStringWithPrefix
(
Map
<
String
,
Object
>
params
,
String
prefix
)
{
StringBuilder
queryStringBuilder
=
new
StringBuilder
();
if
(
params
==
null
||
params
.
size
()
==
0
)
{
return
""
;
}
if
(
prefix
==
null
)
{
prefix
=
""
;
}
StringBuilder
queryStringBuilder
=
new
StringBuilder
();
Iterator
<
Entry
<
String
,
Object
>>
it
=
params
.
entrySet
().
iterator
();
while
(
it
.
hasNext
())
{
Entry
<
String
,
Object
>
entry
=
it
.
next
();
queryStringBuilder
.
append
(
prefix
).
append
(
entry
.
getKey
()).
append
(
"="
).
append
(
entry
.
getValue
());
queryStringBuilder
.
append
(
prefix
).
append
(
entry
.
getKey
()).
append
(
'='
).
append
(
entry
.
getValue
());
if
(
it
.
hasNext
())
{
queryStringBuilder
.
append
(
"&"
);
queryStringBuilder
.
append
(
'&'
);
}
}
return
queryStringBuilder
.
toString
();
...
...
modules/core/src/test/java/org/springside/modules/web/ServletsTest.java
浏览文件 @
0c47a106
...
...
@@ -79,12 +79,19 @@ public class ServletsTest {
queryString
=
Servlets
.
encodeParameterStringWithPrefix
(
params
,
"search_"
);
assertEquals
(
"search_name=foo&search_age=1"
,
queryString
);
// prefix is null
// prefix is
blank or
null
queryString
=
Servlets
.
encodeParameterStringWithPrefix
(
params
,
null
);
assertEquals
(
"name=foo&age=1"
,
queryString
);
queryString
=
Servlets
.
encodeParameterStringWithPrefix
(
params
,
""
);
assertEquals
(
"name=foo&age=1"
,
queryString
);
// map is empty or null
queryString
=
Servlets
.
encodeParameterStringWithPrefix
(
null
,
"search_"
);
assertEquals
(
""
,
queryString
);
params
.
clear
();
queryString
=
Servlets
.
encodeParameterStringWithPrefix
(
params
,
"search_"
);
assertEquals
(
""
,
queryString
);
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录