JB,
In my use case etc/jetty.xml was created by feature:install cave-server and
org.osgi.service.http.port does not exist in etc/*.
What is interesting, when the port in etc/jetty.xml is changed to 9191, cave
http wrapper responds on port 8181 and 9191. Bug?
***
* From Karaf.log
***
2015-05-01 11:28:52,175 | INFO | FelixStartLevel | Activator
| 85 - org.ops4j.pax.web.pax-web-runtime - 3.1.4 | EventAdmin support is
not available, no servlet events will be posted!
2015-05-01 11:28:52,186 | INFO | FelixStartLevel | Activator
| 85 - org.ops4j.pax.web.pax-web-runtime - 3.1.4 | LogService support
enabled, log events will be created.
2015-05-01 11:28:52,195 | INFO | FelixStartLevel | Activator
| 85 - org.ops4j.pax.web.pax-web-runtime - 3.1.4 | Pax Web started
2015-05-01 11:28:52,495 | INFO | pool-6-thread-1 | Server
| 77 - org.eclipse.jetty.aggregate.jetty-all-server - 8.1.15.v20140411 |
jetty-8.1.15.v20140411
2015-05-01 11:28:52,659 | INFO | pool-6-thread-1 | AbstractConnector
| 77 - org.eclipse.jetty.aggregate.jetty-all-server - 8.1.15.v20140411 |
Started [email protected]:9191
2015-05-01 11:28:52,660 | INFO | pool-6-thread-1 | JettyServerImpl
| 86 - org.ops4j.pax.web.pax-web-jetty - 3.1.4 | Pax Web available at
[0.0.0.0]:[9191]
2015-05-01 11:28:52,661 | INFO | pool-6-thread-1 | JettyServerImpl
| 86 - org.ops4j.pax.web.pax-web-jetty - 3.1.4 | Pax Web available at
[0.0.0.0]:[8181]
2015-05-01 11:28:52,668 | INFO | pool-6-thread-1 | AbstractConnector
| 77 - org.eclipse.jetty.aggregate.jetty-all-server - 8.1.15.v20140411 |
Started [email protected]:8181
2015-05-01 11:28:53,446 | INFO | FelixStartLevel | HttpServiceFactoryImpl
| 85 - org.ops4j.pax.web.pax-web-runtime - 3.1.4 | Binding bundle:
[org.apache.karaf.cave.server.http [111]] to http service
***
* Grep for port number in etc/*
***
[etc]$ grep 8181 *
[etc]$ grep 9191 *
jetty.xml: <Property name="jetty.port" default="9191" />
[etc]$
***
* Steps to recreate
***
Steps to I used to install a cave instance and "app_patching" repostory in
Karaf 3.0.3.
- Connect to the root instance of Karaf
bin/client -u karaf
- Create and start an instance called repository while connected to the root
instance.
instance:create --location ${user.home}/cave-repository --ssh-port 8106
repository
instance:start repository
- Connect to the repository instance and install cave then create a repository.
instance:connect -u karaf -p karaf repository
feature:repo-add mvn:org.apache.karaf.cave/apache-karaf-cave/3.0.0/xml/features
feature:install cave-server
cave:repository-create app_patching
cave:repositories
At this point you can shutdown the repository instance and update the port in
${user.home}/cave-repository/etc/jetty.xml
Paul Spencer
> On May 1, 2015, at 12:09 PM, Jean-Baptiste Onofré <[email protected]> wrote:
>
> Hi Paul,
>
> both are possible: it depends of the org.ops4j.pax.web.cfg file.
>
> The org.osgi.service.http.port contains the port.
>
> For instance, containing 8888.
>
> In the jetty.xml, you have something like:
>
> <Set name="port">
> <Property name="jetty.port" default="8181"/>
> </Set>
>
> In that case, the 8181 port number is not used, instead it's the 8888 (as
> defined in the property).
>
> Anyway, Cave server itself doesn't provision etc/jetty.xml (just a CXF config
> file).
>
> Can you check that this jetty.xml doesn't come from another feature (or your
> provisioning) ?
>
> Thanks,
> Regards
> JB
>
> On 04/30/2015 11:35 PM, Paul Spencer wrote:
>> I noticed the TCP port opened by the Cave HTTP server is defined in
>> /etc/jetty.xml instead of a configured property.
>>
>> Is this:
>> 1 - Bug, because it should be configurable property
>> 2 - Bug, because it should us the pax-web port ( pid = org.ops4j.pax.web
>> property = org.osgi.service.http.port)
>> 3 - Documentation bug
>> 4 - Enhancement with the expected behavior of ___ (1 or 2)
>>
>> Paul Spencer
>>
>>
>
> --
> Jean-Baptiste Onofré
> [email protected]
> http://blog.nanthrax.net
> Talend - http://www.talend.com