WSDL Override in Wildfly 10.0
moic Jun 2, 2016 1:51 PMHello, I am trying to make a web service. When I deploy my project, Wildfly auto generates a .wsdl. file. How can I supply my own? I notice when I run server it says this:
09:34:44,136 INFO [org.jboss.ws.cxf.metadata] (MSC service thread 1-1) JBWS024061: Adding service endpoint metadata: id=ProjectWebService address=http://localhost:8080/ProjectName/ws/oop/hello implementor=oop.cloudlet.ws.impl.ProjectWebServiceImpl serviceName={http://impl.ws.cloudlet.oop/}ProjectWebService portName={http://impl.ws.cloudlet.oop/}ProjectWebServiceImplPort annotationWsdlLocation=null wsdlLocationOverride=null mtomEnabled=false
There is a 'wsdlLocationOverride' element there. How do I use it so it is not null, but the location of my wsdl? I am doing this on Eclipse Mars 2. Here are my files if they might help:
ProjectWebService.java
package oop.cloudlet.ws; import javax.jws.WebMethod; import javax.jws.WebParam; import javax.jws.WebResult; import javax.jws.WebService; import javax.xml.bind.annotation.XmlElement; @WebService public interface ProjectWebService { @WebMethod @WebResult(name="response") public String hello(@WebParam(name="stringOne") @XmlElement(required=true) String param1, @WebParam(name="stringTwo") @XmlElement(required=true) String param2); }
ProjectWebServiceImpl.java
package oop.cloudlet.ws.impl; import javax.jws.WebService; import oop.cloudlet.ws.ProjectWebService; @WebService(endpointInterface = "oop.cloudlet.ws.ProjectWebService", serviceName="ProjectWebService") public class ProjectWebServiceImpl implements ProjectWebService { public String hello(String param1, String param2) { return param1 + param2; } }
web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>ProjectName</display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <!-- HELLO SERVICE --> <servlet> <servlet-name>ProjectWebService</servlet-name> <servlet-class>oop.cloudlet.ws.impl.ProjectWebServiceImpl</servlet-class> </servlet> <servlet-mapping> <servlet-name>ProjectWebServiceS</servlet-name> <url-pattern>/ws/oop/hello</url-pattern> </servlet-mapping> </web-app>
Would I have to add anything to web.xml to supply the location of my wsdl? Will I need anything else besides the wsdl file that Wildfly also auto-generates? Any help would be appreciated! Thank you!