webwork 无法工作错误

ailijia365 2009-01-07 02:45:52
配置了webwork+spring+Hibernate框架,tomcat出现如下错误

异 常

org.apache.jasper.JasperException: Could not create ActionMapper: WebWork will *not* work!
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:512)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:395)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


起 因

Could not create ActionMapper: WebWork will *not* work! - Class: com.opensymphony.xwork.spring.SpringObjectFactory
File: SpringObjectFactory.java
Method: buildBean
Line: 114 - com/opensymphony/xwork/spring/SpringObjectFactory.java:114:-1
com.opensymphony.webwork.dispatcher.mapper.ActionMapperFactory.getMapper(ActionMapperFactory.java:41)
com.opensymphony.webwork.views.jsp.TagUtils.buildNamespace(TagUtils.java:74)
com.opensymphony.webwork.components.Component.determineNamespace(Component.java:344)
com.opensymphony.webwork.components.Form.populateComponentHtmlId(Form.java:194)
com.opensymphony.webwork.components.UIBean.evaluateParams(UIBean.java:836)
com.opensymphony.webwork.components.UIBean.end(UIBean.java:591)
com.opensymphony.webwork.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:21)
org.apache.jsp.index_jsp._jspx_meth_ww_form_0(index_jsp.java:153)
org.apache.jsp.index_jsp._jspService(index_jsp.java:82)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

页面代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="WEB-INF/webwork.tld" prefix="ww"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<title>增加图书</title>
<%
System.out.println("request path: +++++++++======== "+request.getContextPath());
%>
<script src='<%=request.getContextPath()%>/dwr/interface/dao.js'></script>
<script src='<%=request.getContextPath()%>/dwr/engine.js'></script>
<script src='<%=request.getContextPath()%>/dwr/util.js'></script>
</head>

<body>

<ww:form action="addBook.action" method="post">

<table width="505" height="327" border="1">
<tr>
<td width="146">p书名:<br></td>
<td width="343"><input type="text" name="name" id="name" /></td>
</tr>
<tr>
<td>作者:</td>
<td><input type="text" name="author" id="author" /></td>
</tr>
<tr>
<td>出版时间:</td>
<td><input type="text" name="publishtime" id="publishtime" /></td>
</tr>
<tr>
<td>出版社:</td>
<td><input type="text" name="publish" id="publish" /></td>
</tr>
<tr>
<td>简介:</td>
<td><input type="text" name="des" id="des" /></td>
</tr>
<tr>
<input type="submit" name="tijiao" id="tijiao" value="增加图书" />
</tr>
</table>
</ww:form>
</body>
</html>



xwork.xml是如下代码


<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.1.dtd">
<xwork>
<include file="webwork-default.xml" />
<package name="default" extends="webwork-default">


<action name="addBook" class="com.zjrj.book.addBookAction">
<external-ref name="dao">dao</external-ref>
<result name="success" type="dispatcher">
<param name="location">/index.jsp</param>
</result>
<interceptor-ref name="defaultStack"/>
</action>

</package>
</xwork>


这个到底该怎么解决的啊~~~~
...全文
165 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wsx324111 2009-01-08
  • 打赏
  • 举报
回复
可能是你xwork里写错了
ailijia365 2009-01-08
  • 打赏
  • 举报
回复

<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.1.dtd">
<xwork>
<include file="webwork-default.xml" />
<package name="default" extends="webwork-default"
externalReferenceResolver="com.atlassian.xwork.ext.SpringServletContextReferenceResolver">
<interceptors>
<interceptor name="reference-resolver" class="com.opensymphony.xwork.interceptor.ExternalReferencesInterceptor"/>
<interceptor-stack name="myDefaultWebStack">
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="reference-resolver"/>
</interceptor-stack>
</interceptors>

<default-interceptor-ref name="defaultStack" />
<action name="addBook" class="com.zjrj.book.addBookAction">
<!-- 将spring中配置的javaBean(dao)注入到webwork的action类中-->
<external-ref name="dao">Dao</external-ref>
<result name="success" type="dispatcher">
<param name="location">success.jsp</param>
</result>
<interceptor-ref name="reference-resolver"></interceptor-ref>
</action>

<action name="hello" class="org.HelloAction">
<result name="error" type="dispatcher">MyJsp.jsp</result>
<result name="success" type="dispatcher">success2.jsp</result>
</action>

</package>
</xwork>


现在变成这样了的,可还是不行额。。。

不过在web.xml里面如果用servlet的话就是可以的额。。。用filter却不行,这个是什么原因啊,我用的webwork的包是2.2.5的
ailijia365 2009-01-07
  • 打赏
  • 举报
回复
是的,我网上搜索,也有人是这样说的,但是该如何解决的呢?
ailijia365 2009-01-07
  • 打赏
  • 举报
回复
web.xml中关于webwork的设置如下

<!--(BEGIN)WEBWORK框架配置-->
<filter>
<filter-name>webwork</filter-name>
<filter-class>com.opensymphony.webwork.dispatcher.FilterDispatcher</filter-class>
</filter>

<filter-mapping>
<filter-name>webwork</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<!--(END)WEBWORK框架配置-->


自己感觉是对的额。。。
pxcong007 2009-01-07
  • 打赏
  • 举报
回复
webWork和Spring的结合有误。
wsx324111 2009-01-07
  • 打赏
  • 举报
回复
webwork映射不对吧,你可以看下web.xml里的配置是否正确。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧