If wanna use https with OSGi HTTPService from pax-web, just edit 
etc/org.ops4j.pax.web.cfg, this is how it works in Karaf/Servicemix

have something like
org.osgi.service.http.secure.enabled=true
org.osgi.service.http.port.secure=8183
org.ops4j.pax.web.ssl.keystore=certs/myKeystore.jks
org.ops4j.pax.web.ssl.keystore.type=JKS
org.ops4j.pax.web.ssl.password=myPassword
org.ops4j.pax.web.ssl.keypassword=myPassword
org.ops4j.pax.web.ssl.clientauthwanted=false
org.ops4j.pax.web.ssl.clientauthneeded=false

Freeman

-------------
Freeman(Yue) Fang

Red Hat, Inc. 
FuseSource is now part of Red Hat
Web: http://fusesource.com | http://www.redhat.com/
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: @Freeman小屋

On 2012-12-12, at 上午12:26, Sergey Beryozkin wrote:

> Hi
> On 11/12/12 15:51, zi'an mu wrote:
>> I use the cxf-dosgi-ri-singlebundle-distribution to provider a
>> webservice.following the simple(like spring_dm and greeter_rest),I aleady
>> publish a helloworld serviece.here is my service config file.
>> 
>> <osgi:service interface="com.helloworld.dosgi.service.IHelloWorldService">
>>     <osgi:service-properties>
>>       <entry key="service.exported.interfaces" value="*" />
>>       <entry key="service.exported.configs" value="org.apache.cxf.rs" />
>>       <entry key="service.exported.intents" value="HTTP" />
>>       <entry key="org.apache.cxf.rs.address" value="
>> http://localhost:9000/services"; />
>>     </osgi:service-properties>
>> 
>>     <bean class="com.helloworld.dosgi.service.impl.HelloWorldServiceImpl" />
>>   </osgi:service>
>> 
>> now I want to use https for my demo service.
>> So I think if I can config Jetty runtime used for the CXF, and then I just
>> need to modify the  "org.apache.cxf.rs.address" to "https://xxxxx";. Is it
>> right?
>> if it is right,how to add the config file into my project? I read the doc (
>> http://cxf.apache.org/docs/jetty-configuration.html) and the demo
>> (wsdl_first_https),but they are not helpful for the osgi environment.
>> 
> On the server side, you can set "org.apache.cxf.rs.address" to a relative 
> value, say "/rs" and that (as Christian explained to me) will be linked to 
> CXF Servlet Transport which is bound to OSGI HTTPService, the full address 
> will be
> 
> "https://localhost:9000/cxf/rs";, where 'cxf' segment can be customized.
> 
> or use
> 
> "org.apache.cxf.rs.http.context" property instead - the only issue is that it 
> does not work with the singlebundle distro at the moment. Using the 
> multibundle one will be better
> 
> Not sure how to do things the DOSGI way on the client side though, in order 
> to get HTTPS wired in ? This can be done with CXF outside of DOSgi, but not 
> sure about DOSGi...
> 
> Christian, how would we do it :-) ?
> 
> Cheers, Sergey

Reply via email to