解决方案 »

  1.   

    放 tomcat 启动报错?啥错
      

  2.   

    也不是说报错吧,就是我方法里面调用service,service没有注入进去,报空指针异常!
      

  3.   

    什么叫“在项目中启动时候可以用”“放在tomcat中,不能用”?你可以用的时候是在哪运行的?
      

  4.   

    我的项目是用apache-maven启动的,这样运行,数据可以出的来;
    当我导出war包放在apache-tomcat-7.0.32里面webApp下面运行的时候,
    我方法里面调用service就报空指针异常
    严重: null
    java.lang.NullPointerException
            at cn.seisys.iti.pdd.om.tsk.service.impl.DoVerifyServiceImpl.ShowTskByTa
    skNo(DoVerifyServiceImpl.java:182)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
    java:57)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:606)
            at com.sun.xml.ws.api.server.InstanceResolver$1.invoke(InstanceResolver.
    java:250)
            at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:149)
            at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTub
    e.java:94)
            at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:961)
            at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:910)
            at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:873)
            at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:775)
            at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:38
    6)
            at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdap
    ter.java:640)
            at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:263
    第182行:
                         TaskDto task = m_ITaskManagerService.getTask(taskId);
      

  5.   

    war包运行时并没有加载webservices,maven启动是运行的jetty吗?
    检查一下你的开发环境和运行环境是否配置一样,把你的war放到jetty里面运行呢?
    最好贴上你的代码和配置。
      

  6.   

    我先试试!先谢谢啦!不行的话,我就把代码贴上!贴代码了 我用的是jax-ws
    web.xml<listener>
        <listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
        </listener>
    <servlet>
             <servlet-name>jax</servlet-name>
             <servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
             <load-on-startup>3</load-on-startup>
        </servlet>
    <servlet-mapping>
            <servlet-name>jax</servlet-name>
            <url-pattern>/doWebService</url-pattern>
        </servlet-mapping>sun-jaxws.xml文件<?xml version="1.0" encoding="UTF-8"?>
    <endpoints version="2.0"
    xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime">
    <endpoint name="IDoVerifyService"  implementation="cn.seisys.iti.pdd.om.tsk.service.impl.DoVerifyServiceImpl" url-pattern="/doWebService"/>
    </endpoints>IDoVerifyService接口@WebService
    @SOAPBinding(style = Style.RPC)
    public interface IDoVerifyService {
    @WebMethod ShowTskVerifyInfoDto  ShowTskByTaskNo(int taskId, String userCorpLevel, String userCorpName);
    }DoVerifyServiceImpl实现类
    @Service
    @WebService(endpointInterface="cn.seisys.iti.pdd.om.tsk.service.IDoVerifyService")
    public class DoVerifyServiceImpl extends SpringBeanAutowiringSupport implements IDoVerifyService{

    @Autowired
    public ITaskManagerService m_ITaskManagerService;        @Override
    public ShowTskVerifyInfoDto ShowTskByTaskNo(int taskId, String userCorpLevel, String userCorpName) {

    ShowTskVerifyInfoDto showTskVerifyInfoPojo = new ShowTskVerifyInfoDto();
    try {
    //调用Service,获得任务信息
    TaskDto task = m_ITaskManagerService.getTask(taskId);

    //调用Service,获得任务设备的基本信息
    TaskInfrastructureDto taskInfrastructure = m_ITaskManagerService.getTaskInfrastructure(taskId);
    pom.xml<dependency>
            <groupId>javax.xml.ws</groupId>
            <artifactId>jaxws-api</artifactId>
            <version>2.2.8</version>
            <type>jar</type>
             <scope>compile</scope>
            </dependency>
            <dependency>
              <groupId>com.sun.xml.ws</groupId>
             <artifactId>jaxws-rt</artifactId>
             <version>2.2.6-2</version>
             <type>jar</type>
             <scope>compile</scope>
             </dependency>
             <dependency>
             <groupId>org.glassfish.gmbal</groupId>
             <artifactId>gmbal-api-only</artifactId>
             <version>3.2.0-b003</version>
             <type>jar</type>
             <scope>compile</scope>
             </dependency>
             <dependency>
             <groupId>org.glassfish.external</groupId>
             <artifactId>management-api</artifactId>
             <version>3.1.0-b001</version>
             <type>jar</type>
             <scope>compile</scope>
             </dependency>
             <dependency>
             <groupId>org.jvnet.staxex</groupId>
             <artifactId>stax-ex</artifactId>
             <version>1.7</version>
             <type>jar</type>
             <scope>compile</scope>
             </dependency>
             <dependency>
             <groupId>com.sun.xml.stream.buffer</groupId>
             <artifactId>streambuffer</artifactId>
             <version>1.5</version>
             <type>jar</type>
             <scope>compile</scope>
             </dependency>
             <dependency>
             <groupId>com.sun.xml.ws</groupId>
             <artifactId>policy</artifactId>
             <version>2.3.1</version>
             <type>jar</type>
             <scope>compile</scope>
             </dependency>
             <dependency>
             <groupId>com.sun.xml.bind</groupId>
             <artifactId>jaxb-impl</artifactId>
             <version>2.2.5</version>
             <type>jar</type>
             <scope>compile</scope>
             </dependency>
             <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-web</artifactId>
             <version>${org.springframework.version}</version>
             </dependency>
    当运行到途中红色的地方时 就报空指针异常了 
    项目中我使用的是apache-maven插件运行的
    在服务器中我用的是tomcat7.0,前者能正常运行处结果,
    后者则不行。
      

  7.   

    @Autowired
    public ITaskManagerService m_ITaskManagerService;    spring注入不成功,    set方法写了吗?如果maven运行正常,应该是兼容的问题。两个原因你需要检查,容器加载spring配置文件时是否正确加载,把maven和tomcat的log文件比对。还有就是项目中的jar包  是否有冲突。
      

  8.   

    先谢谢了,之前没有搞出来就纯JDBC了,现在我再试试。