发现Java模型和WSDL模型之间存在Soap不匹配

发现Java模型和WSDL模型之间存在Soap不匹配,java,web-services,soap,wsdl,Java,Web Services,Soap,Wsdl,我正在用Java开发SOAP服务,但遇到以下错误: WARNING: Mismatch between Java model and WSDL model found, For wsdl operation {http://database.unitn.it/}isLoginOkay,There is no matching wsdl fault with detail QName {http://interfaces.database.unitn.it/}Exception com.sun

我正在用Java开发SOAP服务,但遇到以下错误:

WARNING: Mismatch between Java model and WSDL model found, For wsdl operation 
{http://database.unitn.it/}isLoginOkay,There is no matching wsdl fault with detail 
QName {http://interfaces.database.unitn.it/}Exception
com.sun.xml.internal.ws.spi.db.DatabindingException: Unknown JAXBContext 
implementation: class com.sun.xml.bind.v2.runtime.JAXBContextImpl
at  com.sun.xml.internal.ws.spi.db.BindingContextFactory.getJAXBFactory(BindingContextFactory.j
ava:192)
at com.sun.xml.internal.ws.spi.db.BindingContextFactory.create(BindingContextFactory.java:134)
at com.sun.xml.internal.ws.message.jaxb.JAXBMessage.create(JAXBMessage.java:152)
at com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createSOAPFaultMessage(SOAPFaultBuilder.java:241)
at com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createSOAPFaultMessage(SOAPFaultBuilder.java:224)
at com.sun.xml.internal.ws.wsdl.PayloadQNameBasedOperationFinder.getWSDLOperationMapping(PayloadQNameBasedOperationFinder.java:143)
at com.sun.xml.internal.ws.wsdl.OperationDispatcher.getWSDLOperationMapping(OperationDispatcher.java:82)
at com.sun.xml.internal.ws.api.message.Packet.getWSDLOperationMapping(Packet.java:285)
at com.sun.xml.internal.ws.api.message.Message.getOperation(Message.java:284)
at com.sun.xml.internal.ws.api.message.Message.getOperation(Message.java:302)
at com.sun.xml.internal.ws.api.message.Message.isOneWay(Message.java:379)

...
我正在使用Java1.8,所有东西都在本地主机上运行。这台机器运转良好。 我不知道问题出在哪里。我尝试了很多方法来解决这个问题,但是我没有四个没有一个线程来讨论这个问题。 请帮忙

编辑:

以下是出版商:

private static final String mUrl = "http://localhost:" + Ports.MASTER_DATABASE_SERVICE + "/database";

public static void launch() throws Exception
{
    System.out.println("----Starting on ..." + mUrl);
    Endpoint.publish(mUrl, new Database());
    System.out.println("----SOAP Service started!!!!");
}
这里是客户端部分的接口:

@WebService
@SOAPBinding(style = Style.RPC)
public interface DatabaseAPIsInterface
{

    @WebMethod
    public User isLoginOkay(String password, String email) throws Exception;

}
    String mUrl = "http://localhost:" + Ports.MASTER_DATABASE_SERVICE + "/database?wsdl";
    URL url = new URL(mUrl);
    QName qname = new QName("http://database.unitn.it/", "DatabaseService");
    Service service = Service.create(url, qname);
    DatabaseInterface database = service.getPort(new QName("http://database.unitn.it/", "DatabasePort"), DatabaseAPIsInterface.class);
    User user = database.isLoginOkay(password, email);
    System.out.println(user);
这里是该方法的实现isLoginOkay


myMethod的throws子句是否与.wsdl文档中相应的中指定的错误完全匹配?此外,您可能希望坚持使用Java 1.7,直到1.8已经过测试版,并且在首次公开发布后至少有一次小版本更新,除非您确实需要1.8语言功能。您是否可以将您的发布者类从wsdl的实现和服务部分粘贴到此处。如果可能,我希望使用Java 1.8。还有一件事,我在这里用IntelliJIEACheck来回答:
    String mUrl = "http://localhost:" + Ports.MASTER_DATABASE_SERVICE + "/database?wsdl";
    URL url = new URL(mUrl);
    QName qname = new QName("http://database.unitn.it/", "DatabaseService");
    Service service = Service.create(url, qname);
    DatabaseInterface database = service.getPort(new QName("http://database.unitn.it/", "DatabasePort"), DatabaseAPIsInterface.class);
    User user = database.isLoginOkay(password, email);
    System.out.println(user);