DWR和struts2的问题!!!
发布网友
发布时间:2024-10-09 13:48
我来回答
共3个回答
热心网友
时间:2024-11-02 16:05
我来帮你解答吧。
解1.你的web.xml里应该有<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
<param-name>config</param-name>
<param-value>resources/context/struts-context.xml,struts-default.xml,struts-plugin.xml</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
倒数第二行是请求扩展名,懂了吧,一可以改成<url-pattern>/*.action</url-pattern>这样你的请求只有*.action的进入struts2的filter,其他都不进。同理你可以改servlet的请求扩展名,他也在这里大概是这样的<servlet-mapping>
<servlet-name> myServlet </servlet-name>
<url-pattern> *.do </url-pattern>
</servlet-mapping>
不过话说回来别两个同时用,看代码的人会骂人的。
解2+3:我们配置DWR时一般是这样的:
<script type='text/javascript' src='/dwr/interface/classonedwr.js'></script>
<script type='text/javascript' src='/dwr/interface/newsAdmindwr.js'></script>
<script type='text/javascript' src='/dwr/interface/channelAlldwr.js'></script>
<script type='text/javascript' src='/dwr/interface/voteAlldwr.js'></script>
<script type='text/javascript' src='/dwr/interface/tUserUserinfoJs.js'></script>
<script type='text/javascript' src='/dwr/interface/productViewdwr.js'></script>
<script type='text/javascript' src='/dwr/interface/tSystemLinkJs.js'></script>
<script type='text/javascript' src='/dwr/engine.js'></script>
<script type='text/javascript' src='/dwr/util.js'></script>
看到了吧,其实项目中是没有'/dwr/interface/.....js'路径及这个js的,他们都是dwr自动根据配置文件生成的,dwr自动生成engine.js和util.js(其实也不是生成,就是给你拷一份,这点不用纠结),不用解压的,所有class翻译的js,dwr都放入'/dwr/interface/'里面,你找不到的原因是因为你的路径写错了,后来你解压找到了就因为确实找到了,找到你解压的了,并不是dwr生成的。但你其他自写的class翻译的js路径还是不对的。注class翻译js的步骤是运行期做的工作,只要路径和名字写对了其他不用管。 以上是没有修改dwr基础配置文件的路径,如果改了就另当别论了!
热心网友
时间:2024-11-02 15:56
dwr可能有多种搭建方式吧,我之前只用过一种,看看对你有没有帮助。
dwr其实不算是动态生成JS文件,都是需要在启动时把对应的JAVA类加载到容器中,并赋予xxxx.js的别名而已。因此需要一个dwr.xml文件,来指定需要加载的类,并描述出【Java类】和【Javascript别名】的对应关系。
看到你完全没提及这个文件,也许就是漏了这一块东西吧?
热心网友
时间:2024-11-02 16:02
不知道