JSP IllegalArgumentException: проблема com.sun.xml.messaging.saaj.soap.LocalString! = Com.sun.xml.internal.messaging.saaj.soap.LocalStrings - PullRequest
2 голосов
/ 08 мая 2011

Я создаю программу, которая связывается с веб-сервисом, который написан с использованием JSP и Struts. Но когда я хочу создать новый экземпляр веб-сервиса, я получаю следующую ошибку:

SEVERE: Servlet.service() for servlet [FrontController] in context with path [/P3_GUI] threw exception [Servlet execution threw an exception] with root cause
java.lang.IllegalArgumentException: com.sun.xml.messaging.saaj.soap.LocalStrings != com.sun.xml.internal.messaging.saaj.soap.LocalStrings

Что происходит в следующем коде моего ActionClass

 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;

  import org.apache.struts.action.Action;
  import org.apache.struts.action.ActionForm;
  import org.apache.struts.action.ActionForward;
  import org.apache.struts.action.ActionMapping;

  import vakws.Vak;
  import vakws.VakService;

  public class AddAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,     HttpServletRequest request, HttpServletResponse response) {
    AddForm myForm = (AddForm)form;

    VakService service = new VakService();
    Vak vakProxy = service.getVakPort();

    boolean result = vakProxy.addVak(myForm.getVakName(), Double.parseDouble(myForm.getVakMark()));

    if(!result){
        return mapping.findForward("show_addError");    
    }       
    return mapping.findForward("show_addResults");      
  }
}

VakService и VakProxy генерируются автоматически с использованием документа wsdl.

Я занимаюсь разработкой в ​​Eclipse и развертыванием программы на сервере Tomcat. Веб-сервер работает с JAX-WS 2.2.3

Кто-нибудь знает решение этой проблемы?

Заранее спасибо!

1 Ответ

3 голосов
/ 08 мая 2011

У вас есть несколько разных версий SAAJ-библиотек в пути к классам вашего веб-приложения.SAAJ уже в комплекте с JDK.Возможно, у вас есть saaj-*.jar файл в /WEB-INF/lib вашего веб-приложения, который конфликтует с JDK-связанной библиотекой SAAJ.Очистить его.

...