java - Apache Chemistry OpenCMIS 服务器无法部署在 JBoss AS 7 上

标签 java jboss cxf opencmis apache-chemistry

我正在尝试使用 Apache Chemistry OpenCMIS (v0.10.0) 根据教程创建服务器:http://chemistry.apache.org/java/how-to/how-to-create-server.html

我使用的是 JBoss AS 7.1.1.1.Final,但是当我部署时,它会正确创建大多数服务,直到出现此错误。

Caused by: org.apache.cxf.jaxws.JaxWsConfigurationException: The @javax.jws.WebMethod(exclude=true) cannot be used on a service endpoint interface. Method: createType

我正在使用 Apache 的 WAR 依赖项,但我找到了导致它的源代码

public interface RepositoryServicePort10 extends RepositoryServicePort {
  @WebMethod(action = "createType", exclude = true)
  public void createType(String repositoryId, Holder<CmisTypeDefinitionType> type, CmisExtensionType extension)
         throws CmisException;

我应该怎么做才能解决这个问题?

我可以配置 CXF 来忽略它吗?

或者我需要下载代码,删除“exclude = true”部分并重新编译?如果没有它,服务器会正​​常运行吗?

感谢您的任何建议。

问候,伊瓦尔

来自控制台的更多信息

09:26:46,280 INFO [org.jboss.wsf.stack.cxf.deployment.WSDLFilePublisher] (MSC service thread 1-16) WSDL published to: file:/C:/apps/jboss-as-7.1.1.Final/standalone/data/wsdl/chemistry-opencmis-server-bindings-war-0.10.0.war/VersioningServiceService.wsdl 09:26:46,329 INFO [org.apache.cxf.service.factory.ReflectionServiceFactoryBean] (MSC service thread 1-16) Creating Service {<a href="http://webservices.impl.server.opencmis.chemistry.apache.org/" rel="noreferrer noopener nofollow">http://webservices.impl.server.opencmis.chemistry.apache.org/</a>}RepositoryService10Service from class org.apache.chemistry.opencmis.server.impl.webservices.RepositoryServicePort10 09:26:46,336 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-16) MSC00001: Failed to start service jboss.deployment.unit."chemistry-opencmis-server-bindings-war-0.10.0.war".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."chemistry-opencmis-server-bindings-war-0.10.0.war".INSTALL: Failed to process phase INSTALL of deployment "chemistry-opencmis-server-bindings-war-0.10.0.war" at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_40] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_40] at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_40] Caused by: javax.xml.ws.WebServiceException: org.apache.cxf.jaxws.JaxWsConfigurationException: The @javax.jws.WebMethod(exclude=true) cannot be used on a service endpoint interface. Method: createType at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:350) at org.jboss.wsf.stack.cxf.deployment.EndpointImpl.doPublish(EndpointImpl.java:88) at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:239) at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:509) at org.jboss.wsf.stack.cxf.configuration.NonSpringBusHolder.configure(NonSpringBusHolder.java:117) at org.jboss.wsf.stack.cxf.deployment.aspect.BusDeploymentAspect.startDeploymentBus(BusDeploymentAspect.java:113) at org.jboss.wsf.stack.cxf.deployment.aspect.BusDeploymentAspect.start(BusDeploymentAspect.java:66) at org.jboss.as.webservices.deployers.AspectDeploymentProcessor.deploy(AspectDeploymentProcessor.java:74) at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] ... 5 more Caused by: org.apache.cxf.jaxws.JaxWsConfigurationException: The @javax.jws.WebMethod(exclude=true) cannot be used on a service endpoint interface. Method: createType at org.apache.cxf.jaxws.support.JaxWsServiceConfiguration.isOperation(JaxWsServiceConfiguration.java:192) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.isValidMethod(ReflectionServiceFactoryBean.java:1859) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.createInterface(ReflectionServiceFactoryBean.java:908) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:435) at org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:685) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:507) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:241) at org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:205) at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:101) at org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:157) at org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:203) at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:433) at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:322) ... 13 more

<p>09:26:46,395 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870: Deploy of deployment "chemistry-opencmis-server-bindings-war-0.10.0.war" was rolled back with failure message {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"chemistry-opencmis-server-bindings-war-0.10.0.war\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"chemistry-opencmis-server-bindings-war-0.10.0.war\".INSTALL: Failed to process phase INSTALL of deployment \"chemistry-opencmis-server-bindings-war-0.10.0.war\""}} 09:26:46,634 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2) JBAS015877: Stopped deployment chemistry-opencmis-server-bindings-war-0.10.0.war in 239ms 09:26:46,638 INFO [org.jboss.as.controller] (DeploymentScanner-threads - 2) JBAS014774: Service status report JBAS014777: Services which failed to start: service jboss.deployment.unit."chemistry-opencmis-server-bindings-war-0.10.0.war".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."chemistry-opencmis-server-bindings-war-0.10.0.war".INSTALL: Failed to process phase INSTALL of deployment "chemistry-opencmis-server-bindings-war-0.10.0.war"</p>

09:26:46,645 ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) {"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-2" => {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"chemistry-opencmis-server-bindings-war-0.10.0.war\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"chemistry-opencmis-server-bindings-war-0.10.0.war\".INSTALL: Failed to process phase INSTALL of deployment \"chemistry-opencmis-server-bindings-war-0.10.0.war\""}}}}

最佳答案

我刚刚尝试了该解决方案/并验证了它/如果有人感兴趣的话。

  1. 在 IDE 上使用 Maven 下载源代码/创建树项目

    /chemistry-opencmis-0.11.0 /chemistry-opencmis-服务器绑定(bind) /chemistry-opencmis-server-inmemory

  2. -> 将父 pom 上的编译器版本从 1.5 更新到 1.7。

  3. 从 -bindings 更新 2 个以下文件:

    ObjectServicePort10.java

    RepositoryServicePort10.java

    -> 只是从 @webmethod 中踢出属性(..,exclusion = true)

这将作为 JBoss 7.1 上的一个魅力部署

享受吧!

关于java - Apache Chemistry OpenCMIS 服务器无法部署在 JBoss AS 7 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20324377/

相关文章:

java - 在 Java 中实现请求限制的任何开箱即用的方法?

具有后端功能的 Java Web 服务

jboss - 以编程方式确定 jboss 5 和 7 之间的 jboss 版本

rest - 如何在 TomEE 中编写基于 CXF 的 REST 客户端?

Java REST 实现 : Jersey vs CXF

java - 从请求网址中提取特定字段

java - 如何从测试用例的 application.properties 文件中获取参数

java - 'delete' 中函数 'SQLiteDataBase' 的文档中的错误

java - 如何将文件夹直接上传到 github 存储库?

java - 在服务器请求方法中获取并保存 SOAP 传入请求 (XML) ?没有处理程序