繁体   English   中英

如何使用 JAX-WS 从 Web 服务访问 DAO

[英]How to access DAO from Webservice using JAX-WS

刚开始使用 JAX-WS。 我创建了服务 class 和 DAO class。 我的服务运行良好,但它给了 NullPointerExeption b'coz 它无法定位到 DAO; 我正在尝试从服务 class 调用 DAO:

package com.nmmc.works.service.impl;
@WebService(serviceName="MyService")
public class SecurityServiceImpl extends GenericServiceImpl implements ISecurityService
{   
    private ISecurityDAO securityDAO;

....getter setter methods....

@WebMethod
    public Integer getBidAcceptanceIdForSDPayment(Integer tMastNo)
    {   
        InternalResultsResponse<Object> response = getSecurityDAO().getMyMethod(tenderMastNo);
        if(response != null && response.getResultsList().size() > 0){
            return Integer.parseInt(response.getFirstResult().toString());  
        }else{
            return -1;
        }

    }

还有sun-jaxws.xml.....

<b>
<?xml version="1.0" encoding="UTF-8"?>
    <endpoints version="2.0" xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime">
      <endpoint 
          implementation="com.nmmc.works.service.impl.SecurityDepositServiceImpl"

          name="MyServices" 
          url-pattern="myPath/SecurityServiceImpl"
          />
    </endpoints></b>

在 web.xml....

<b><listener>
      <listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
    </listener>

    <servlet>
        <servlet-name>WebServices</servlet-name>
        <servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
        <load-on-startup>2</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>WebServices</servlet-name>
        <url-pattern>/ws/*</url-pattern>
    </servlet-mapping></b>

当你运行它时,你的 SecurityServiceImpl 中没有 DAO。 您必须确保正确创建 DAO 并将其注入/获取。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM