我在同一台服务器上部署了几个 Web 应用程序。我想从 app2 访问 app1 中有一个 JSP。我在 tomcat 中启用了跨上下文访问并尝试了这个 JSTL 标记:
<c:import url="/pages/myJSP.jsp" context="/app1" />
使用myJSP.jsp
一些 struts2 标签本身。
我还确保所需的库位于 app1 和 app2 的 lib 目录中。但是在运行时,app2 的页面不会呈现,我看到了这个错误:
引起:java.lang.ClassCastException:com.opensymphony.xwork2.ognl.OgnlValueStack 无法在 org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java: 53) 在 org.apache.struts2.views.jsp.StrutsBodyTagSupport.getStack(StrutsBodyTagSupport.java:44) 在 org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:48)
知道为什么吗?如果我将 jsp 复制到 app2 并使用相同的 c:import 标签引用它,它就可以正常工作!