我有几个Web应用程序部署在同一台服务器上。 app1中有一个我想从app2访问的JSP。我能在tomcat交叉背景下访问并试用了此JSTL标签:Struts2跨上下文JSP访问使用c:import抛出ClassCastException
<c:import url="/pages/myJSP.jsp" context="/app1" />
的myJSP.jsp
使用了一些Struts2的标签本身。
我还确保所需的库位于app1和app2的lib目录中。在运行期间,虽然,app2的页面不会呈现,我看到这个错误:
Caused by: java.lang.ClassCastException: com.opensymphony.xwork2.ognl.OgnlValueStack cannot be cast to com.opensymphony.xwork2.util.ValueStack at org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java:53) at org.apache.struts2.views.jsp.StrutsBodyTagSupport.getStack(StrutsBodyTagSupport.java:44) at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:48)
任何想法为什么?如果我将jsp复制到app2并使用相同的c:import标记引用它,则它工作得很好!
如何在构建时复制它们? maven是否有这个选项? – mystarrocks 2013-05-01 09:17:02
使用Ant你可以做到这一点,还有一个Maven与Ant集成的选项。 – 2013-05-01 09:21:04
似乎无法找到任何参考,得到一个? – mystarrocks 2013-05-01 09:25:05