2015-09-23 4 views
0

У меня есть приложение Struts2, которое отлично работает с Eclipse, и я также пробовал его на обычном веб-сервере Tomcat6 (скопированный файл .war в папку webapps).Struts2 on Websphere

Но после развертывания файла .war на WebSphere Application Server, получено следующее сообщение об ошибке при совершении формы в приложении:

Любая идея, как решить эту проблему?

description The server encountered an internal error() that prevented it from fulfilling this request. 

exception 
javax.servlet.ServletException: Filter execution threw an exception 



root cause 
java.lang.NoSuchMethodError: ognl/SimpleNode.isEvalChain(Lognl/OgnlContext;)Z 
    com.opensymphony.xwork2.ognl.OgnlUtil.isEvalExpression(OgnlUtil.java:223) 
    com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:214) 
+0

В пути к классам существует некоторая старая зависимость OGNL, удалите ее. –

+0

Когда файл войны сгенерирован, файл войны содержит файл ognl-3.0.5.jar. Я попытался исключить его из-за ошибки, но я получаю ту же проблему. struts2-core содержит зависимость OGNL. На серверах Tomcat6 ad Tomcat7 он работает так, как ожидалось. – mlorika

+0

Не исключайте 'ognl-3.0.5'. Настройте приложение в websphere, в котором используются файлы приложений. –

ответ

0

Джеронимо-web.xml файл был добавлен в корневую папку в созданном файле войны

APP_ID это мое приложение.

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1"> 
    <dep:environment xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2"> 
     <dep:moduleId> 
      <dep:groupId>default</dep:groupId> 
      <dep:artifactId>App_ID</dep:artifactId> 
      <dep:version>1.0</dep:version> 
      <dep:type>war</dep:type> 
     </dep:moduleId> 
     <dep:hidden-classes> 
      <dep:filter>ognl</dep:filter> 
      <!-- 
      <dep:filter>org.apache.axis2</dep:filter> 
      <dep:filter>javax.xml.bind</dep:filter> 
      <dep:filter>javax.xml.ws</dep:filter> 
      --> 
     </dep:hidden-classes> 
    </dep:environment> 
    <context-root>/App_ID</context-root> 
</web-app> 
Смежные вопросы