I am trying to implement an OSGI based JAX-WS WebService client on WebSphere Application Server(8.5.5). I created a web project in my RAD (Rational Application Developer) workbench and added the programming model as osgi.
After that I tried to create the webservice client from the available wsdl.
But I am getting the following error " The IBM WebSphere JAX-WS Web service runtime does not support Client projects with the OSGi Bundle facet."
Are you using JAX-WS on WebSphere Application Server traditional (i.e. not the Liberty Profile)? If so, then traditional does not support JAX-WS in OSGi Applications. The Liberty profile does support JAX-WS.
If not, then this could be a tools check that's no longer valid. I know the tools used to prevent you doing this when JAX-WS was not supported on traditional or Liberty. You could try using the latest WebSphere Developer tools from the Ecilpse Marketplace or https://wasdev.net/repo to create a simple test project to see if you hit the same problem.
I hope this helps.
Regards, Graham.
Related
the about-page of wso2ei 6.1.1 (https://docs.wso2.com/display/EI611/About+this+Release)
mentioned the possibility to develop and especially to deploy msf4j apps in wso2ei:
From WSO2 EI 6.1.0 onwards, it does not ship the functionalities of
WSO2 Application Server (AS). However, you can develop applications
using MSF4J, JAX-RS or JAX-WS technologies and deploy in WSO2 EI. If
you already have applications in WAR or AAR formats, use WSO2 AS 5.3.0
or Tomcat as the server to deploy web apps. Nevertheless, WSO2 still
provides complete development and production support for WSO2 AS.
I am very interested to do this, but unfortunally I can not find any information on this topic. I would be happy to receive information and links to this topic.
You can develop a service using MSF4J and deployed it with the MSF4J profile which is available with the WSO2 EI. Sample is mentioned in Doc 1
Highlevel steps would be
Develop the MSF4J service
Put that jar file in <EI_HOME>/wso2/msf4j/deployment directory
Start the MSF4J profile in EI <EI_HOME>/wso2/msf4j/bin/carbon.sh
I checked the IBM knowledge center, the websphere support a EJB application inside a OSGI bundle, I am not sure if Liberty also support it so far?
According to this documentation page, EJB applications in OSGi bundles are not support on WebSphere Liberty:
IBM doc: Enterprise OSGi programming model support
At a customer we use WAS to develop and run web apps. The problem is that WAS running locally is not the fasted web server.
With the release of Websphere Liberty Profile (WLP) it could be a good alternative to run on our local development environment.
Will Java apps developed on WLP run on a 'real' WAS server? Without changes??
Yes, Java EE applications developed on Liberty will run on WebSphere Application Server traditional without changes because both are Java EE compliant application servers. Because of it's composabilility, smaller size and faster starter startup time, developing applications on Liberty and deploying them on WebSphere Application Server traditional is a common paradigm and can provide a good development experience.
If you develop on Liberty with a goal to deploy on traditional WebSphere Application Server, and limit your applications to the EE6 web profile programming model (https://www-01.ibm.com/support/knowledgecenter/SSEQTP_8.5.5/com.ibm.websphere.wlp.doc/ae/rwlp_feature_webProfile-6.0.html) your application is likely to run unmodified on traditional WebSphere Application Server.
The WebSphere Migration Toolkit can help answer some of theses kinds of questions by analyzing your application:
https://www.ibm.com/developerworks/websphere/downloads/migtoolkit/config.html
I have created a rest api using jersey 2.10 framework. The application is deployed on Websphere application server 8.5. Since websphere comes bundled with jax-rs 1 implementation, I configured shared library to use jax-rs 2 jar files. My company policy does not allow configuration of shared libraries and I am being asked to downgrade to jax-rs 1 implementation. And that is the last thing I want to do.
Is there a way to disable or remove jax-rs 1 from websphere 8.5. JAX-RS is included under web 2.0 features in websphere and is it possible to remove/disable web2.0 feature in the server.
The only way to use Jersey 2.10 framework is via shared library as discussed JAX-RS Jersey 2.10 support in WebSphere 8. You could use WebSphere Liberty, where you can disable jax-rs 1.1 or WebSphere Liberty Beta, which supports JAX-RS 2.0. But with your company restrictions, it probably will be not possible also.
So for the future, you should know about benefits and limitations of the platform that you are planing to deploy and use its provided features instead of some third party, especially if you have some other external limitations.
We have an enterprise application using Spring 3.2.8 and Spring Web Flow 2.3.3 deployed on the Websphere 8 server. We wish to report statistics like no. of incomplete flows, the state at which user terminate the flow, time spent at individual states etc. We thought of using Spring Instrumentation. However, could not find instrumentation jar package for Spring 3.2 and Webflow 2.3. Where can I find the complete distribution of Spring 3.2 instrumentation jars? Or which other tool can I use for my purpose with Websphere 8? Please help.
I just did a google search. If I read the webpage correctly, instrumented spring is a paid product.
From http://static.springsource.com/projects/instrumentation/index.html:
Instrumented Spring Framework, Web Services, Web Flow, and Security are available as part of a tc Server Spring Edition 2.x subscription or evaluation, which includes integration with Hyperic HQ. Instrumented Spring products are also available to Spring Enterprise subscribers.