Я сгенерировал классы из wsdl, внедрил интерфейс службы и развернул приложение в Glassfish 4. Но я получаю javax.servlet.ServletException: класс com.webservice.SampleServiceImpl не является сервлетом, когда я нажимаю URL-адресв браузере
В моей войне нет servlet.jsr
@WebService(name = "SampleService", targetNamespace = "http://com/webservice/")
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
@XmlSeeAlso({
ObjectFactory.class
})
public interface SampleService {
@WebMethod(action = "http://com/create")
@WebResult(name = "transactionId", targetNamespace = "http://com/transfer/", partName = "transactionId")
public String create(
@WebParam(name = "Create", targetNamespace = "http://com/transfer/", partName = "request")
Create request)
throws SampleService_Exception
;
}
Класс реализации
@WebService(name = "SampleService", targetNamespace = "http://com/webservice/", endpointInterface="com.webservice.SampleService")
public class SampleServiceImpl implements SampleService {
/**
* {@inheritDoc}
*/
@Override
public String create(Request request0) throws SampleService_Exception {
return "";
}
}
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<servlet>
<servlet-name>SampleServiceImpl</servlet-name>
<servlet-class>com.webservice.SampleServiceImpl</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SampleServiceImpl</servlet-name>
<url-pattern>/services/SampleService</url-pattern>
</servlet-mapping>
</web-app>
Журнал ошибок: java.lang.ClassCastException: com.webservice.SampleServiceImpl не может быть приведен к javax.servlet.Servlet в com.sun.enterprise.web.WebContainer.createServletInstance (WebContaine r.java:991) в com.sun.enterprise.web.WebModule.createServletInstance (WebModule.java: 2130) в org.apache.catalina.core.StandardWrapper.loadServlet (StandardWrapper. java: 1404) в org.apache.catalina.core.StandardWrapper.allocj (стандартный) в org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperV alve.java:237) в org.apache.catalina.core.StandardContextValve.invoke (StandardContextV alve.Java: 160)