我编写了一个简单的代码,将rest与Struts 2.3.24集成在一起
我有我的Struts XML
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<constant name="struts.mapper.class" value="rest" />
<!-- Overwrite Convention -->
<constant name="struts.convention.action.suffix" value="Controller"/>
<constant name="struts.convention.action.mapAllMatches" value="true"/>
<constant name="struts.convention.default.parent.package" value="com.pag.rest.service"/>
<constant name="struts.convention.package.locators" value="service"/>
</struts>
我的控制器类是
package com.pag.rest.service;
public class RequestController {
// GET
public String index() {
return "SUCCESS";
}
// GET
public String show() {
return "SUCCESS";
}
// POST
public String create() {
return "Create - SUCCESS";
}
// PUT
public String update() {
return "SUCCESS";
}
// DELETE
public String destroy() {
return "SUCCESS";
}
}
每当我尝试访问该服务时...它表示未找到动作未映射异常
请让我知道我还需要做些什么才能让代码正常工作
答案 0 :(得分:0)
父包应为rest-default
。将以下常量添加到配置文件struts.xml
:
<constant name="struts.convention.default.parent.package" value="rest-default"/>
删除
<constant name="struts.convention.package.locators" value="service"/>
并将您的包名重命名为com.pag.rest.actions
。它将在actions
文件夹下搜索您的控制器。