标签: axis2

Apache CXF和Axis之间的区别

使用Apache CXF而不是Apache Axis有什么好处,反之亦然?

axis wsdl axis2 cxf

173
推荐指数
4
解决办法
10万
查看次数

JAX-WS,Axis2和CXF之间的区别

有什么区别:

  1. JAX-WS
  2. Axis2的
  3. CXF

这三个都可用于在Java中创建Web服务.
据我所知,JAX-WS是一个规范,Axis2和CXF是实现,但是如果我没有错,Java 1.6就会实现JAX-WS.

那么可以使用Java 1.6来开发JAX-WS Web服务而无需使用Axis2或CXF吗?那么Axis2,CXF的用途是什么?

java axis2 cxf jax-ws

127
推荐指数
3
解决办法
9万
查看次数

Java Webservice Client(最佳方式)

我有第三方WSDL,我需要用Java编写代码,以便Web服务客户端调用第三方WSDL中的操作.现在,我使用Axis的WSDL2JAVA工具生成了客户端存根,并使用XMLbeans进行数据绑定.

  1. 这个JAVA的最佳方法是什么?
  2. 我看过SAAJ,看起来会有更细粒度的方法吗?
  3. 除了使用WSDL2Java工具之外,还有其他方法来生成代码.也许wsimport在另一种选择.优缺点都有什么?
  4. 有人可以发送关于这些主题的一些好教程的链接吗?
  5. 使用WSDL2Java生成代码时需要使用哪些选项?

我最初使用了一些基本的东西.现在我有这些选择

C:\axis2-1.5.1\bin>wsdl2java -uri  mywsdlurl  -o client -p somepackage -d xmlbeans -s -t -ssi
Run Code Online (Sandbox Code Playgroud)

java axis2 wsdl2java jax-ws webservice-client

81
推荐指数
2
解决办法
10万
查看次数

如何使用Log4j更改包的日志级别?

我遇到了以下错误:

http://issues.apache.org/jira/browse/AXIS2-4363

它陈述如下:

仅当org.apache.axiom的日志级别为DEBUG时才会出现此错误,因此解决方法是设置日志级别> DEBUG.

我的问题是如何做到这一点?我一直在搜索我的目录中的属性文件或其他东西,我一直在寻找是否有我可以在代码中设置的东西,但我真的不知道我在做什么.我现在正在桌面上运行一个控制台应用程序,同时试图让它工作.

更新1:我注意到我的Axis2目录在其根目录中有自己的log4j.properties文件.这是安全忽略还是解决方案的一部分(或问题的一部分)?

更新2:根目录log4j.properties文件显然未正确设置.现在它看起来像这样:

log4j.rootLogger=DEBUG, R 
log4j.logger.org.apache.axiom=WARN
log4j.appender.R=org.apache.log4j.RollingFileAppender 
log4j.appender.R.MaxFileSize=10MB 
log4j.appender.R.MaxBackupIndex=10 
log4j.appender.R.layout=org.apache.log4j.PatternLayout 
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
Run Code Online (Sandbox Code Playgroud)

但这显然是错误的,因为此代码返回"Log level is null":

System.out.println("Log level is " + logger.getLevel());
Run Code Online (Sandbox Code Playgroud)

现在我正在使用代码设置日志级别

Logger logger = Logger.getLogger("org.apache.axiom");
logger.setLevel(Level.WARN);
Run Code Online (Sandbox Code Playgroud)

java logging axis2 log4j axiom

57
推荐指数
3
解决办法
10万
查看次数

Prolog SAXParserException中不允许使用内容

我试图呼叫一个Web服务,但面临一个奇怪的行为.我们的服务器上运行了一个Web服务,但代码不对我们开放,因此无法看到墙后面发生了什么服务的所有者已经暴露了基于Web的测试客户端UI,它在文本框中输入并将显示对测试目的的响应.此输入框以下面提到的格式输入

<CONTENT>
 <CONTENTID></CONTENTID>
 <DOCUMENTID>DRI2</DOCUMENTID>
 <LOCALECODE>en_US</LOCALECODE>
 <LATEST_VERSION>false</LATEST_VERSION>
 <INCREASEVIEWCOUNT>false</INCREASEVIEWCOUNT>
 <ACTIVITY_TYPE></ACTIVITY_TYPE>
</CONTENT>
Run Code Online (Sandbox Code Playgroud)

它在这个用户界面上工作得很好,但是当我试图通过我的java代码调用这个Web服务时它连接以及获得服务授权但是当我试图调用上面的方法它给我以下错误消息

AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
 faultSubcode: 
 faultString: org.xml.sax.SAXParseException: Content is not allowed in prolog.
 faultActor: 
 faultNode: 
 faultDetail: 
 {http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXParseException: Content is not allowed in prolog.
 at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
 at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source)
 at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
 at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
 at org.apache.xerces.impl.XMLScanner.reportFatalError(Unknown Source)
 at org.apache.xerces.impl.XMLDocumentScannerImpl$PrologDispatcher.dispatch(Unknown Source)
 at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
 at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
 at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
 at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
 at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
 at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
 at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
 at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
 at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
 at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
 at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
 at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) …
Run Code Online (Sandbox Code Playgroud)

java axis axis2 webservice-client saxparseexception

44
推荐指数
1
解决办法
20万
查看次数

Axis2 webservice和CXF Web服务之间的差异

如果有人帮助我理解axis2 web服务和CXF Web服务之间的区别,我将不胜感激.

axis axis2 web-services cxf

32
推荐指数
1
解决办法
3万
查看次数

Axis2客户端的最小类路径是什么?

我想用Maven2 构建一个Axis2客户端(我只访问一个远程Web服务,我没有实现一个!),我不想在我的项目中添加21MB的JAR.当我用ADB转换WSDL时,我需要在我的pom.xml中编译代码?

java axis2 maven-2 classpath

31
推荐指数
5
解决办法
3万
查看次数

wsimport生成的客户端如何工作?

在此之前,我想让您知道我已经可以连接到Web服务服务器了.我问这个问题是因为我希望深入了解wsimport生成的客户端是如何工作的.根据我的研究,wsimport使用JAXWS.请注意,我不了解JAXWS.

我使用wsimport生成了我的客户端.我使用的WSDL来自Axis2 Web服务,由Axis2自动生成.下面的类是wsimport的结果:

com.datamodel.xsd

  • DataBeanRequest.java
  • DataBeanResponse.java
  • ObjectFactory.java
  • package-info.java

com.service

  • MyWebService.java
  • MyWebServicePortType.java
  • MyMethod.java
  • MyMethodResponse.java
  • ObjectFactory.java
  • package-info.java

使用上面的类,我可以告诉它com.datamodel.xsd包含Web服务服务器使用的bean(不包括ObjectFactorypackage-info).同时,MyMethodMyMethodResponse也用于设置的web服务方法/操作的请求和响应参数豆.

以下是我的问题:(如果你不知道我的一些问题的答案,你真的不必回答所有问题.:)请随时分享你认为我可能会觉得有用的任何信息.)

我是否正确

  • 我的上述假设是否正确?
  • 其他课程的功能是什么?
  • 我检查过MyWebService,它包含一个注释,指的是我用来生成客户端的WSDL的绝对位置.wsdllocation在客户端中指定的相关性是什么?客户如何使用该信息?
  • 我注意到Web服务的实际URL未在生成的任何类中声明.客户如何知道需要连接的位置?
  • 是否对WSDL文件进行了注释,以便客户端可以在连接时读取WSDL文件上的URL?如果是这样,那么是否意味着在必须建立新连接时始终读取WSDL文件?
  • 由于我需要编译我的应用程序并将其安装在不同的服务器上,因此将无效.我可以将其设置为相对路径而不是绝对路径吗?怎么样?(答案:是的,它可以设置为相对路径.该wsimport命令有一个wsdllocation属性,其中wsdllocation可以指定值.)
  • 如果我需要连接到HTTPS,该怎么办?如何设置服务器证书?
  • 当我使用wsimport生成客户端时以及使用Axis2或Apache CXF生成客户端时有什么区别.

java axis2 web-services jax-ws wsimport

30
推荐指数
1
解决办法
4万
查看次数

Tomcat v7.0 Server中的Apache Axis2 Web服务运行时不支持服务项目Test

Tomcat v7.0 Server中的Apache Axis2 Web服务运行时不支持服务项目Test.为什么?请帮我

tomcat axis2

26
推荐指数
1
解决办法
5万
查看次数

?wsdl和?singleWsdl参数之间有什么区别?

我的消息传递提供程序为我提供了两种不同的WSDL.

http://my.amazonaws.com:8000/webservice/?wsdl
http://my.amazonaws.com:8000/webservice/?singleWsdl
Run Code Online (Sandbox Code Playgroud)

第一个是嵌入式 WSDL.不能使用它来生成WSDL2java包,也不能使用JAX-WS来创建连接.

第二个是单个 WSDL.它可以使用CXF 3.0的WSDL2java生成Java包,并可以使用JAX-WS创建连接.它工作得很好.

请告诉我这两种WSDL之间的区别.

wsdl axis2 web-services cxf jax-ws

26
推荐指数
1
解决办法
2万
查看次数