2011-05-08 25 views
2

我正在創建一個與webservice通信的程序,它是用JSP和Struts編寫的。但是,當我要創建web服務我得到以下錯誤的一個新實例:JSP IllegalArgumentException:com.sun.xml.messaging.saaj.soap.LocalString!= com.sun.xml.internal.messaging.saaj.soap.LocalStrings問題

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

有沒有人知道這個問題的解決方案?

在此先感謝!

回答

3

您的webapp的運行時類路徑中有多個不同版本的SAAJ庫。 SAAJ已經與JDK捆綁在一起。可能您的webapp的/WEB-INF/lib中有一些saaj-*.jar文件與JDK捆綁的SAAJ庫衝突。清理它。