我正在用Jboss 6.3实例在我的项目中使用REST DSL组件。我有两个问题
我正在使用Spring,如下所示,在两个包中,一个绑定关闭,一个绑定json。
Bundle1
<restConfiguration bindingMode="json" component="restlet" port="8080"/>
<rest path="HelloService/rs">
Bundle2
<restConfiguration bindingMode="off" component="restlet" port="8080"/>
<rest path="AnotherService/rs">
有什么解决办法或建议吗?
发布于 2017-10-31 12:14:17
在使用restlet、jetty等时,不能使用karaf/jboss中的多个包来实现这一点。只有在使用servlet时才能重复使用与JBoss fuse一起打开的共享http服务/servlet。
所以你应该这么做
<restConfiguration bindingMode="off" component="servlet"/>
使用servlet时的端口号仅用于文档,如果您在camel- swagger -java中使用swagger api-docs。
发布于 2017-11-01 12:09:36
非常感谢克劳斯。
我能够让它与"servlet“组件一起工作,但下面提到的附加更改很少。
<osgi:reference id="anHttpService" interface="org.osgi.service.http.HttpService" />
<bean class="org.apache.camel.component.servlet.osgi.OsgiServletRegisterer"
init-method="register" destroy-method="unregister">
<property name="alias" value="/myService" />
<property name="httpService" ref="anHttpService" />
<property name="servlet" ref="aCamelServlet" />
<property name="servletName" value="aCamelServlet" />
</bean>
<bean id="aCamelServlet"
class="org.apache.camel.component.servlet.CamelHttpTransportServlet" />
<restConfiguration bindingMode="json" component="servlet">
<endpointProperty key="servletName" value="aCamelServlet" />
</restConfiguration>
同时,将camel-servlet添加到pom中。通过这样做,这两个包都用自己的上下文路径启动并运行。
https://stackoverflow.com/questions/47034521
复制相似问题