If no other services are running under different context at the same port, can you just set the cxf's servlet context to "/" to make the cxf services accessible at that root path context?
2014-02-10 22:25 GMT+01:00 lkrao31 <lavin.koruka...@broadridge.com>: > Hello All, > > We have a requirement where in we have multiple services deployed on our > container and these containers are in a cluster spread across different > hosts. > > Below is our Infra design > > It has 2 hosts which have fuse software instlled. ssh is not available > between the 2 nor is internet access. all containers created are children of > either host. > > Fuse ESB Version 6 and patch 5 > > * All containers on same version > * seprate profile for web service > * 3 jvms (2 root and one extra on server2) for ensemble cluster. These will > not host any applications. They are purely meant for zookeeper registry. > * Camel/cxf fabs to be deployed in web service profile > * 2 jvms/containers for web services(one on each host) > * Setup custom port for webservice 9001. > > > We thought of achieving load balancing via a load balancer. ie create a vip > for the 2 service endpoints. CSS being the load balancer. > > Services are supposed to be deployed in 2 containers with the following > configs: > > Web-Service-1 URL =http://ip1:9001/contexrtoor1 > Web-Service-1 URL=http://ip2:9001/contextroot1 > > > Web-Service-2 URL =http://ip1:9001/contexrtoor2 > Web-Service-2 URL=http://ip2:9001/contextroot2 > > > The web service would be called by the consumers by using a loadbalancer VIP > > http://vip/contexroot1 and > http://vip/contextroot2 > > We were able to cusmtomize the http ports by installing the cxf feature and > pax web server and we have addded a custom filed in the file > org.ops4j.pax.web.properties as org.osgi.service.http.port=9001 now our > container is binded to 9001 but the issue is our web-service ends points are > only accessible as > > > Web-Service-1 URL =http://ip1:9001/cxf/contexrtoor1 > Web-Service-1 URL=http://ip2:9001/cxf/contextroot1 > > > Web-Service-2 URL =http://ip1:9001/cxf/contexrtoor2 > Web-Service-2 URL=http://ip2:9001/cxf/contextroot2 > > http://vip/cxf/contexroot1 and > http://vip/cxf/contextroot2 > > if we remove '/cxf' from the context root is trowing a 404 error and this is > not acceptable by the dev because as per the design they want the consumers > to access their services as > > http://vip/contexroot1 and > http://vip/contextroot2 > > I know that one solution will be to > > Add org.apache.cxf.osgi.cfg file into $FUSE _ESB/etc/ folder, add an > entry > org.apache.cxf.servlet.context=/mycontext > > but my doing that it is always explicitly set to only one service , and for > the consumers to access other service again they should have to go through > > Web-Service-2 URL =http://ip1:9001/contestroot1/contexrtoor2 , which is not > desired by our architecture team since in future they could be many services > running on this container and each service should have to be independently > accessed. > > > > Please kindly guide me on how to achieve this. > > Thanks > > > > -- > View this message in context: > http://camel.465427.n5.nabble.com/Customize-http-ports-change-cxf-to-for-different-services-hosted-on-Fuse-container-tp5747052.html > Sent from the Camel - Users mailing list archive at Nabble.com.