首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

最简单CXF的配置有关问题

2012-02-07 
最简单CXF的配置问题刚学Web Service ,用的是apache-cxf-2.2.7。但是第一个简单的发布Service都没成功,暂时

最简单CXF的配置问题
刚学Web Service ,用的是apache-cxf-2.2.7。

但是第一个简单的发布Service都没成功,暂时不集成spring,生成不了wsdl.xml 。

web.xml

XML code
<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5"     xmlns="http://java.sun.com/xml/ns/javaee"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">       <servlet>        <servlet-name>CXFServlet</servlet-name>        <display-name>CXF Servlet</display-name>        <servlet-class>            org.apache.cxf.transport.servlet.CXFServlet        </servlet-class>        <load-on-startup>1</load-on-startup>    </servlet>    <servlet-mapping>        <servlet-name>CXFServlet</servlet-name>        <url-pattern>/*</url-pattern>    </servlet-mapping></web-app>


Java code
package com.pal.service.api;import javax.jws.WebService;@WebServicepublic interface SayHello {        public String hello();  }


Java code
package com.pal.service.impl;import javax.jws.WebService;import com.pal.service.api.SayHello;@WebService(endpointInterface="com.pal.service.api.SayHello",serviceName="SayHello")public class SayHelloImpl implements SayHello {    public String hello() {        return "hello , Web Service !";    }}


Java code
package com.pal.service.app;import javax.xml.ws.Endpoint;import com.pal.service.impl.SayHelloImpl;public class WebApp {   public static void main(String[] args) {       System.out.println("Starting Server");       SayHelloImpl implementor = new SayHelloImpl();       String address = "http://localhost:8080/helloWorld";       Endpoint.publish(address, implementor);   }}


访问http://localhost:8080/helloWorld。Tomcate 报告404 !
这是最简单的发布服务的配置了,那里有问题呢???

[解决办法]
你用 main 方法运行的话,CXF 会启动内置的 jetty 服务器来提供 Web 服务,因此那个 web.xml 配了等于没配。

如果你是用 main 方法启动的,实在没出看来有什么问题。

一般用 main 启动的话,启动正常会在控制台中输出日志的,我不知道你看到日志了没有?

热点排行