无法识别注释

时间:2019-05-28 09:27:07

标签: java web-services annotations websphere axis2

我们正在部署一个带有在axis2.ear内的注释(@ webservice,@ webmethod,@ webresult等)的Web服务。问题在于,生成的wsdl不能反映在这些注释中传递的名称,并且进一步的分析表明,我们的Websphere应用程序服务器(版本9.0.0.10)没有扫描任何注释。

我们的web.xml版本是2.5。

我已经尝试向MANIFEST.MF中添加各种值,例如UseWSFEP61ScanPolicy:true,元数据完整:false。

请在下面找到我的网络服务代码:

  import java.io.StringReader;

  import java.text.DateFormat;

  import java.text.SimpleDateFormat;

  import java.util.Date;

  import javax.ejb.Stateless;

  import javax.jws.WebMethod;

  import javax.jws.WebParam;

  import javax.jws.WebResult;

  import javax.jws.WebService;

  import javax.xml.parsers.DocumentBuilder;

  import javax.xml.parsers.DocumentBuilderFactory;

  import javax.xml.xpath.XPath;

  import javax.xml.xpath.XPathConstants;

  import javax.xml.xpath.XPathFactory;

  import org.w3c.dom.Document;

  import org.w3c.dom.Element;

  import org.w3c.dom.Node;

  import org.w3c.dom.NodeList;

  import org.xml.sax.InputSource;

  @Stateless

 @WebService(serviceName = "WASync", portName = "WASyncSoap", targetNamespace = "http://www.is.com/")

  public class WASync
  {

   @WebMethod(action = "http://www.is.com/ISWSLogin", operationName = "ISWSLogin")

   @WebResult(header = true, name = "ISWSLoginResult", targetNamespace = "http://www.is.com/")

   public java.lang.String ISWSLogin(@WebParam(name = "username") java.lang.String username, @WebParam(name = "password") java.lang.String password)
     {

       <--my code-->

       return xmlResp.getXml();

    }

  }

下面是我通过SOAP UI获得的结果,但是我期望下面的return标签应该重命名为webservice中@webresult标签中给定的name属性。

  <ns:ISWSLoginResponse xmlns:ns="http://www.is.com.wwwwwww/">

  <ns:return><![CDATA[<Session Action="Login" SessionKey="">

    <RetStatus>0</RetStatus>

    <ErrorString/>

    <ISResponse>

      <SessionKey>87964643-55ab43406b9</SessionKey>

   </ISResponse>

</Session>]]></ns:return>

0 个答案:

没有答案