It's what I said in a previous e-mail:

"The org.osgi.service.http.port contains the port."

Not sure I understood your issue ;)

Regards
JB

On 05/04/2015 04:55 PM, Paul Spencer wrote:
Achim,
Setting the property org.osgi.service.http.port worked.  Now Cave is listening 
on one port, 9191.

karaf@repository()> config
karaf@repository(config)> edit org.ops4j.pax.web
karaf@repository(config)> property-set org.osgi.service.http.port 9191
karaf@repository(config)> property-list
    org.osgi.service.http.port = 9191
karaf@repository(config)> update
karaf@repository(config)> exit


Paul Spencer

On May 1, 2015, at 3:54 PM, Achim Nierbeck <[email protected]> wrote:

Hi,

creating an additional connector via the jetty.xml isn't a bug.
The port for pax-web is set in the org.ops4j.pax.web.cfg
which doesn't necessarily be in a configuration file.
You'll find this configuration with the config:* commands.
There you'll find the config
org.osgi.service.http.port=8181

regards, Achim

2015-05-01 18:53 GMT+02:00 Paul Spencer <[email protected]>:
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




--

Apache Member
Apache Karaf <http://karaf.apache.org/> Committer & PMC
OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer & 
Project Lead
blog <http://notizblog.nierbeck.de/>
Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS>

Software Architect / Project Manager / Scrum Master



--
Jean-Baptiste Onofré
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com

Reply via email to