0 0

Cxf发布服务的Url路径的最后有没有?wsdl有什么区别?5

我现在有一个项目,要改之前项目的webservice,但是我只改了服务方法的内容,没有改过配置,客户端没有动过,但是不知道为什么原来的路径没有办法访问到服务。先上代码..
service.xml
	<import resource="classpath:META-INF/cxf/cxf.xml" />
	<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
	<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />

	<import resource="applicationContext.xml" />
	<jaxws:endpoint id="ultrairs" implementor="#ultrairsService" address="/UltrairsService"></jaxws:endpoint>

服务接口
@WebService(targetNamespace = "http://webservice.common.irs.ultrapower.com", name = "UltrairsService")
public interface Ultrairs {

	public String AllOperations(String xml);
}

服务实现
@WebService(targetNamespace = "http://webservice.common.irs.ultrapower.com", name = "UltrairsService")
public class UltrairsService implements Ultrairs {
	public String AllOperations(String xml) {
              return “”;
}}

1.原来的客户端根据urlhttp://10.224.132.4:7005/ultrairs/services/UltrairsService?wsdl是可以访问服务的,但是现在我改过之后只能根据http://10.224.132.4:7005/ultrairs/services/UltrairsService来访问,想问一下这个url有没有?wsdl有什么区别?(客户要求不能改客户端)
2.另外我发现客户端在访问的时候设置namespace为"";也能访问。请问这个namespace在服务中起到的作用是什么?(自己也在网上查了些资料,但是都写的比较混乱)谢谢各位大哥

问题补充:1.这个叫命名空间我知道,原来我以为当一个请求发送的时候是靠这个命名空间来访问到这个具体的webservice类的。但是看了那个客户端的写法,它设置的命名空间为“”,然后还可以访问到这个服务,所以会产生疑惑,这个命名空间是干嘛用的?
2.小弟新接触webservice,还请大哥说的详细一些。
1)这个要怎么检查是否被限制了呢?
2)发布方式已经上代码了。
3)我是用tomcat发布的,web服务器是不是就是tomcat的webapps里面?
283433775 写道
1,namespace是命名空间,一般主要用于生产类时的命名空间部分,就是import的那部分。
2,对于你的问题,有可能很多原因,
  1)首先检查一下是否是限制访问了,一般来说如果可以访问的webservice,即可访问wsdl。
  2)检查你的发布方式,是否发布了wsdl。
  3)检查你的web服务器下,你发布的东西中有无包含service.xml。


问题补充:cxf是2.2.2的
283433775 写道
这个很难确定,根据你的使用的环境,你的cxf用的是什么版本?


问题补充:现在的问题是根据http://10.224.132.4:7005/ultrairs/services/UltrairsService?wsdl这个路径可以访问到xml页面,但是如果根据客户端的代码url如果写这个路径就访问不到,要去掉那个?wsdl才能访问到。
283433775 写道
http://freedomjustice.iteye.com/blog/165519


问题补充:
log4j:WARN No appenders could be found for logger (org.apache.axis.i18n.ProjectResourceBundle).
log4j:WARN Please initialize the log4j system properly.
AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
 faultSubcode: 
 faultString: java.net.ConnectException: Connection timed out: connect
 faultActor: 
 faultNode: 
 faultDetail: 
	{http://xml.apache.org/axis/}stackTrace:java.net.ConnectException: Connection timed out: connect
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
	at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
	at java.net.Socket.connect(Socket.java:519)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:153)
	at org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:120)
	at org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:191)
	at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:404)
	at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
	at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
	at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
	at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
	at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
	at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
	at org.apache.axis.client.Call.invoke(Call.java:2767)
	at org.apache.axis.client.Call.invoke(Call.java:2443)
	at org.apache.axis.client.Call.invoke(Call.java:2366)
	at org.apache.axis.client.Call.invoke(Call.java:1812)
	at RMSClient.execute(RMSClient.java:73)
	at RMSClient.main(RMSClient.java:83)

	{http://xml.apache.org/axis/}hostname:gefer

这个是客户端访问路径加了?wsdl后报的错误。
283433775 写道
能看看wsdl访问的出错提示吗,这个发布wsdl的工具太多,很难确定原因。如果是404找不到,请确认你生成了wsdl服务的xml,如果是禁止或者其他的,说不定是其他拒绝等问题。


问题补充:
283433775 写道
你用浏览器调用过,试了吗?

是指我把路径变成localhost么?试过了,xml页面没有问题。下面的那个address location也跟着变了

问题补充:
283433775 写道
你再问问旁边的人吧,这种问题只有很多的判断和尝试,我搞不定了

哦,谢谢大哥
2011年11月04日 17:49

7个答案 按时间排序 按投票排序

0 0

你再问问旁边的人吧,这种问题只有很多的判断和尝试,我搞不定了

2011年11月15日 16:18
0 0

你用浏览器调用过,试了吗?

2011年11月15日 14:56
0 0

还有一个可能,你通过你发布服务本地的http://localhost...这样的方式访问以下wsdl试试。http://cxf.547215.n5.nabble.com/cxf-wsdl-localhost-td598144.html

2011年11月15日 13:41
0 0

能看看wsdl访问的出错提示吗,这个发布wsdl的工具太多,很难确定原因。如果是404找不到,请确认你生成了wsdl服务的xml,如果是禁止或者其他的,说不定是其他拒绝等问题。

2011年11月15日 13:39
0 0

http://freedomjustice.iteye.com/blog/165519

2011年11月15日 11:44
0 0

这个很难确定,根据你的使用的环境,你的cxf用的是什么版本?

2011年11月15日 11:42
0 0

1,namespace是命名空间,一般主要用于生产类时的命名空间部分,就是import的那部分。
2,对于你的问题,有可能很多原因,
  1)首先检查一下是否是限制访问了,一般来说如果可以访问的webservice,即可访问wsdl。
  2)检查你的发布方式,是否发布了wsdl。
  3)检查你的web服务器下,你发布的东西中有无包含service.xml。

2011年11月15日 09:12

相关推荐

    cxf服务端wsdl发布帮助.docx

    ### CXF服务端WSDL发布及代码生成详解 #### 一、概述 在现代软件开发中,特别是企业级应用开发领域,Web服务扮演着至关重要的角色。CXF(Camel and XFire)作为Apache下的一个开源项目,为开发高质量的Web服务提供...

    apache CXF wsdl2java工具使用说明

    其中 `&lt;WSDL URL&gt;` 是 WSDL 文件的 URL 或本地路径。 ##### 3.2 选项说明 `wsdl2java` 支持多种选项来控制生成的代码类型: - `-p`: 指定生成代码的包名。 - `-d`: 指定生成代码的输出目录。 - `-client`: 生成...

    利用mule服务总线代理cxf服务

    ### 利用Mule服务总线代理CXF服务 在当今复杂的IT环境中,服务总线技术扮演着重要的角色,它能够有效地集成不同的应用程序和服务。本文将详细介绍如何利用Mule ESB(Enterprise Service Bus)作为代理来访问CXF发布...

    CXF提供的wsdl2java工具创建客户端

    7. **编辑web.xml**:在`WebContent/WEB-INF`目录下编辑`web.xml`文件,配置CXF的服务发布信息。 #### 六、使用wsdl2java工具创建客户端 一旦服务端搭建完成并能够正常提供服务,我们就可以使用CXF的`wsdl2java`...

    根据wsdl生成webservice服务端(3种方式)

    其中`-d`指定输出目录,`-p`指定生成的Java代码的包名,最后一个参数是WSDL文件的URL或本地路径。 3. **实现服务**:根据生成的接口实现具体的业务逻辑,例如实现`IHelloWorldImpl.java`中的方法。之后可通过各种...

    cxf+spring发布webservice和restservice

    本项目“cxf+spring发布webservice和restservice”专注于利用Apache CXF框架与Spring框架结合,实现这两种服务的发布。Apache CXF是一个开源的、功能丰富的服务栈,它使得开发者能够轻松地构建和部署SOAP和RESTful ...

    apache-cxf-2.7.7以及cxf客户端所需要的jar包

    Apache CXF是一个开源的Java框架,它主要用于构建和开发Web服务。这个压缩包"apache-cxf-2.7.7以及cxf客户端所需要的jar包"包含了Apache CXF 2.7.7版本及其客户端运行所需的库文件。这些jar包对于创建、部署和消费...

    使用cxf发布的webservice服务

    在`web.xml`文件中,我们配置CXF的Servlet监听特定的URL路径,例如`/services/*`。 对于客户端,CXF同样提供了便利的工具生成客户端代理类,这些代理类可以像调用本地Java方法一样调用远程的WebService。使用CXF的...

    CXF生成ws客户端代码

    - `&lt;wsdl_url&gt;` 是WSDL文件的URL或者本地文件路径。 例如,假设我们需要从`http://127.0.0.1:6666/helloworld?wsdl`这个WSDL文件生成代码,并将生成的代码放在`D:\workspace\cxf-client`目录下的`com.example.cxf`...

    wsdl4j 解析wsdl 文件

    2. **服务生成器**:工具或框架(如Axis,CXF等)使用WSDL4J自动生成服务客户端或服务器端代码。 3. **测试工具**:测试框架可能利用WSDL4J检查服务是否符合WSDL定义。 ### 总结 WSDL4J是处理WSDL文档的关键工具,...

    webserice客户端代码(java)生成,wsdl本地文件或wsdl url均可以生成(绝对可用)

    本地文件路径适用于已经下载的WSDL文件,而URL则可以直接指向在线发布的WSDL。 在Java中,有多种工具可以帮助我们根据WSDL生成客户端代码,例如Apache CXF的`wsdl2java`命令行工具。使用这个工具,你可以像这样生成...

    webService(基于cxf)的完整例子

    例如,可以使用`@WebService`注解标记一个Java类为Web服务接口,并使用`@Path`注解来定义RESTful服务的URL路径。 4. **CXF服务部署**:CXF提供多种部署方式,包括独立服务器、Tomcat等应用服务器,以及Spring容器。...

    cxf tomcat发布

    4. **生成WSDL**:CXF提供了工具可以自动根据接口生成WSDL文件,这有助于客户端了解服务的契约。 5. **部署服务**:创建一个`wsdl2java`生成的Java源代码,然后编译成JAR或者WAR文件。如果是JAR,可以直接放到...

    用cxf开发webservice

    `url-pattern`的设置确定了CXF服务的访问路径。 在`applicationContext-cxf.xml`文件中,你可以定义CXF的行为和扩展,比如服务端点、数据绑定和消息处理器等。这是一个XML配置文件,用来声明Spring Bean,定义CXF...

    JAVA CXF webservice的示例代码

    实践这些步骤有助于你掌握CXF的基本用法,为更复杂的Web服务开发打下基础。在实际项目中,你可能需要处理更多的细节,比如错误处理、安全认证、性能优化等,但这个基础示例已经为你打开了Web服务开发的大门。

    webservice :spring 3+cxf3.4服务方,AXIS1.4请示方调用

    - **验证服务**:通过访问服务的WSDL URL来验证服务是否正确部署: ```plaintext http://10.64.6.60:8080/axis/services/businessLinkageService?wsdl ``` #### Axis 1.4调用WebService 为了能够通过Axis 1.4...

    wsdl2java工具

    `wsdl2java`是Apache CXF框架提供的一款命令行工具,它能够根据WSDL文件自动生成Java客户端和服务端代码,大大简化了Web服务的开发流程。这个工具支持两种方式来获取WSDL:文件路径和URL。 ### 使用WSDL2Java工具 ...

    cxf 入门(hello world)

    1. 在Maven的src/main/webapp/WEB-INF目录下创建cxf-servlet.xml配置文件,指定服务发布路径: ```xml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:cxf="http://cxf.apache.org/core" xsi:...

    WebService的实现——CXF学习笔记

    5. **XML配置**:CXF可以通过XML配置文件(如`cxf-servlet.xml`)来配置服务发布、端点地址等。这些配置文件通常包含在Web应用的`WEB-INF`目录下,用于告诉CXF如何部署和运行服务。 6. **客户端调用**:CXF提供了...

Global site tag (gtag.js) - Google Analytics