Installing OSGi jars on Lotus Domino 8.5.3 - apache

I'm working on a Servlet which I am deploying as an OSGi Plugin on a Lotus Domino Server (8.5.3).
The servlet uses HttpClient to make REST style requests of a backend server.
Currently Domino 8.5.3 ships with org.apache.commons.httpclient (3.0.0.20110912-1350). I would really like to use org.apache.httpcomponents.httpclient-4.2.1.
Any idea how I can deploy the jars (there are dependencies, core, logging, codec) on the Server so that they are available to my osgi plugin?
I've had quite a bit of help getting this far but this one is defeating me, and I have code that works if only I had access to the httpcomponents.httpclient api :-)
Many many thanks in advance :-)

Don't know if Lotus Domino is a OSGi capable server, but usually you just need to add a version to your import-package part for the httpclient api packages.
For example your Mantifest should contain something like
Import-Package: org.apache.httpclient;version=[4.2,5)
Now if Lotus Domino is a OSGi capable server it should be straight forward to deploy your httpclient jar in version 4.2.1 (I think this one already does contain a manifest declaring the right packages)
In case this is not the case you might want to create your own OSGi-ready httpclient package, the BND tools and the apache maven-bundle-plugin will help you on that.

Related

How to call TWS Beans from another Java EE server

How to call TWS beans from another Java EE server like JBoss or even WAS Liberty Profile?
I've no direct experience with JBoss or Liberty, but we have tried several times from Tomcat without success. Maybe it's possible with Liberty but as said I've never tried it.
This is one of the reason we are moving to REST APIs that makes interoperability much easier. REST APIs has been introduced on TWSd with 9.3 FP2, but are still not available on TWSz.
If you need them on TWSz, you can try to open an RFE to push this new feature.
If you don't have a product/release that natively support REST APIs, a possible pattern is to implement your own REST APIs based on J2EE APIs and deploy them as an additional WAR on the engine/connector WAS, and the call these REST APIs from your JBoss, Liberty.

Apache ACE together with Apache Felix embedded in Tomcat?

I am wondering whether there is a more or less easy solution for the following situation.
We have a web application that is using OSGI bundles. The application is deployed in Tomcat and embeds the Apache Felix framework as described in the documentation of Apache Felix. These are the prerequisites which cannot be changed.
Is it possible to use Apache ACE with this setup in order to distribute the bundles? The target.jar of Apache ACE comes with its own OSGI container which seems to make it hard to combine it with the one in our application. Is there an easy way to achieve this? The Apache ACE documentation is not that elaborate in this point.
Yes, it is. Apart from the target.jar artifact, which includes the framework and the management agent, that management agent is also available as a separate bundle. That is what you need for your scenario.
Getting the management agent artifact is a matter of unjarring the target jar:
jar xf target.jar jar/org.apache.ace.agent.jar
Configuring the management agent is explained here:
http://ace.apache.org/user-doc/user-guide.html#running-a-target

SIP servlet container

Does GlassFish 4.0 server act as a SIP servlet container? I googled but could not find a answer. It may be obvious but I could not figure it out. I am new to Java EE.
I have got a legacy prototype implementation to work with. It uses Java SIP servlet. It's a Netbeans project. It does not have any setup documentation. So I don't know which server I should use.
I installed Netbeans IDE 8.0 with Java EE 7 and GlassFish server 4.0. I thought I would start learning to use SIP servlet by following Oracle's SIP Servlet Tutorial. In that tutorial, "Communication Server" is recommended in "Required Software" section. When I googled to download this, I found Oracle Communications Converged Application Server which was not free.
I'm not sure if you can use GlassFish for SIP servlets, I'm not aware of any implementation working with it. But you can use Mobicents, built on top of Tomcat or JBoss.

Worklight + WebSphere eXtreme Scale

I tried the integration of these products based on this article and I hit the same problem already documented in the article.
"invocation of javascript function 'getRSSFeeds' has failed: Could not initialize class com.ibm.websphere.objectgrid.ObjectGridManagerFactory
FWLSE0101E: Caused by: [project ExtremeScaleInWorklight]java.lang.NoClassDefFoundError: Could not initialize class com.ibm.websphere.objectgrid.ObjectGridManagerFactory"
It seems that it is caused by a Java class collision of log4j.
My solution was to create a separate Liberty server and install the WXS client for Liberty. This solved the problem, but then I cannot use the WL Development Server anymore which turns the development less efficient.
What is the best way to develop this kind of solution?
I have seen this integration of products on several slides, but I can't find an official guide on how to achieve this. Is there any?
Have You tries to get the IBM WebSphere eXtremeSCale Liberty profile developer tools 8.6 also installed in your WL Development Server ?
SO WXS has two components Client ( libraries) and Serer side components. They can be housed in the same JVM -- for tests, in production this does not really make sense. Serer side hosts storing of objects and enforcing the 'grid management' policies that you may employ using the xml confg files.
perhaps you can use IBM WebSphere eXtremeSCale Liberty profile developer tools 8.6 also installed in your WL Development Server and include then in the classpath.

Setting up a SOAP enviornment?

I want to set up a SOAP development enviornment. So I can create web services and such. I tried following the docs for the TOMCAT/AXIS/APACHE stuff but it all seemed outdated? Any recommendations, links or resources to good ways to set up an SOAP enviornment? I will be using Eclipse.
First, you'll need to decide on what container to use, Apache Axis2 is a popular choice. You can then go through the QuickStart guide to get things up and running quickly. Another popular choice is Apache CXF.
I know you favor eclipse, but NetBeans comes with some example web services packages installed.
Well you need to write your webservice in a development language such as PHP and have it served up to the consumer of your webservice with something like a webserver(apache)