Struts2REST插件客户端程序

Struts2REST插件客户端程序,struts2,struts-config,Struts2,Struts Config,我编写客户端web jsp页面就像有一个带有用户名搜索文本框和提交按钮的表单(get) 当用户提交时,它返回用户的json格式 但是当我提交它时,url看起来像 如何将此url转换为struts2中的以下url struts2中是否有.htaccess文件 @Results( { @Result(name = "success", type = "redirectAction") }) public class UsersController implements ModelDriven&l

我编写客户端web jsp页面就像有一个带有用户名搜索文本框和提交按钮的表单(get)

当用户提交时,它返回用户的json格式

但是当我提交它时,url看起来像

如何将此url转换为struts2中的以下url

struts2中是否有.htaccess文件

@Results( { @Result(name = "success", type = "redirectAction") })
public class UsersController implements ModelDriven<Object>,
ServletRequestAware {
private String username;
private HttpServletRequest request;
private String representation;

// GET /users/{username}
public HttpHeaders show() {
String acceptHeader = request.getHeader("Accept");
String type = "xml";
if (acceptHeader == null || acceptHeader.isEmpty() ||
acceptHeader.equals("application/xml")) {
representation = UserBO.getXML(username);
} else if (acceptHeader.equals("application/json")) {
representation = UserBO.getJSON(username);
type = "json";
}
return new DefaultHttpHeaders(type).disableCaching();
}
@Results({@Result(name=“success”,type=“redirectAction”)})
公共类UsersController实现模型驱动,
ServletRequestAware{
私有字符串用户名;
私有HttpServletRequest;
私有字符串表示;
//获取/users/{username}
公共HttpHeaders show(){
字符串acceptHeader=request.getHeader(“接受”);
String type=“xml”;
if(acceptHeader==null | | acceptHeader.isEmpty()||
acceptHeader.equals(“应用程序/xml”)){
表示法=UserBO.getXML(用户名);
}else if(acceptHeader.equals(“application/json”)){
representation=UserBO.getJSON(用户名);
type=“json”;
}
返回新的DefaultHttpHeaders(类型).disableCaching();
}
您可以使用

要在URL中使用参数,请在操作名称后确保已设置:

<constant name="struts.enable.SlashesInActionNames" value="true"/>
<constant name="struts.mapper.alwaysSelectFullNamespace" value="false"/>

然后,动作映射将如下所示:

<package name="edit" extends="struts-default" namespace="/edit">
  <action name="/person/*" class="org.apache.struts.webapp.example.EditAction">
      <param name="id">{1}</param>
      <result>/mainMenu.jsp</result>
  </action>   
</package>

{1}
/mainMenu.jsp
当请求类似于/edit/person/123的URL时,将调用EditAction,其“id”字段将设置为123