JGroups with JBoss application server - jboss

Where can I find a basic example of code for using Jgroups with JBoss application server.
Jboss application server (version 7 or 6) ships with JGroups (used for custering).
I simply want to reuse this jgroups module in order to do server to server messaging.

[1] provides a good starting point.
[1] http://piotrnowicki.com/2013/02/using-jgroups-directly-from-jboss-as-7-component/

Related

java.lang.NoSuchMethodError when sending message from WildFly 10 to remote ActiveMQ Artemis

We're working on a JMS based application deployed under WildFly 10. Now we're migrating from the embedded ActiveMQ Artemis server to a standalone one.
The same application server hosts a JBPM instance (version 6.5). When we try to send messages we have this error:
java.lang.NoSuchMethodError: io.netty.util.internal.PlatformDependent.getContextClassLoader()Ljava/lang/ClassLoader.
We think there is a compatibility problem on Netty, so we also tried to install another Netty version on JBoss but it doesn't work and the server doesn't start.
Do you have any suggestions?

Weblogic and Websphere JMS Queue Communication

Currently in Weblogic we are running two applications and communicating through JMS Queue. Now one of the application we are moving to Liberty Server. What are the configuration we need to do for JMS Queue connection between Weblogic and Websphere.
Depending on which JMS Provider are you using, you have several options:
if provider has compatible JMS Resource Adapter (e.g. WebSphere MQ) - you can use that RA together with Liberty jca feature
if provider has a sort of thin client, you can embed that client libraries together with your application, and manually setup connection
if your current provider doesn't support any of above, you can use external JMS server that has compatible JMS RA (for example WebSphere MQ) and integrate it with both WebLogic and Liberty.
Update based on comments
There is no simple way to access Liberty JNDI externally - see this post Connect to Websphere Liberty jmsServer from remote application server
You could try to access embedded JMS via API. It is discussed here: https://www.ibm.com/mysupport/s/question/0D50z000062ktc3CAA/helloworld-jms-client-connecting-to-embedded-liberty-jms-server?language=en_US
But to be honest, if I were you I would either:
use external JMS Provider that is compatible with both runtimes e.g. WebSphere MQ
or rewrite interface between WebLogic and Liberty to REST, so that WebLogic invokes via REST simple application that reads the request and puts it to the queue in embedded Liberty JMS engine to avoid calling JMS engine externally.

how to set http version to 1.1 only in wildfly server?

A Issue raised to change HTTP version 1.1 only in web server configuration.
I am using wildfly 10 as my server.
I have tried using connector varible but it is not allowed in wildfly 10 so help me out with this.
In undertow subsystem configuration you should add require-host-http11="true" to your http/http-listener.
for more configuration options see https://wildscribe.github.io/WildFly/13.0/subsystem/undertow/server/http-listener/index.html#attr-require-host-http11

Configure IBM HTTP server for Jboss Application server

Recently we have moved our application from websphere to jboss application server.
IBM Http server (IHS) has front ended(proxy) the websphere application server.
Now we want to make changes to httpd.conf to make the IHS to front end the jboss. So whats the configuration to be done at IHS server to act like reverse proxy for JBOSS application server?
There's really no reason to do this, because IBM HTTP Server is only ever supported when it's used with IBM software that it was bundled with.
If you do do it, you're nearly alone in doing so and w/o the assistance of IBM.
Technically, you could use mod_proxy_balancer and mod_proxy_http just like any other Apache-based server, but they're not as well maintained because they are only used in one very obscure/withdrawn IBM product that bundles IHS. It's a basic proxy configuration for Apache and not really worth going into detail here.
The best option for JBoss AS/Wildfly application server proxy for you is Apache HTTP Server with mod_cluster.
Community
You can give it a try with Fedora: mod_cluster package
And there is an example on how to compile it from sources and configure it with Apache HTTP Server from scratch: example, recorded terminal session. It also operates on Windows and Solaris.
Why mod_cluster over mod_jk/mod_proxy?
The main benefit of mod_cluster over mod_proxy*balancer / mod_jk solutions is that both JBoss AS and Wildfly contain mod_cluster subsystems that automatically report deployed contexts and life cycle events to the mod_cluster balancer in Apache HTTP Server. JBoss AS/Wildfly workers join Apache HTTP Server balancer automatically, you don't have to reconfigure anything in your httpd.conf nor restart httpd when you add another JBoss AS/Wildfly worker.
Current load report is also a part of these service messages. One may use several different load metrics within JBoss AS/Wildfly, e.g. heap utilization, CPU load, number of currently open sessions, or one could easily implement a custom load metric.
The result is a high-throughput dynamic load balancer that takes into account actual utilization of your JBoss AS/Wildfly workers.
Commercial support
If you need a fully supported solution for mod_cluster balancer, both Red Hat JBoss Web Server, i.e. Apache HTTP Server, mod_cluster, OpenSSL, Tomcat 7, Tomcat 8, mod_jk, ModSecurity, and Red Hat JBoss Enterprise Application Platform (EAP), i.e. application server built on Wildfly 10+ or AS 7+, entitle you to fully supported mod_cluster balancer fronting either Tomcat workers or EAP workers.
Full Disclosure: I am an engineer at Red Hat

Secure JBoss EAP 6 JMX channel

I'd like to know if it's possible to secure access to the JMX channel when running JBoss EAP 6 (or WildFly). AFAIK, the only available check is username and password which can be added just for remote connections.
Thanks!
The packaging of JMX has been removed from JBoss EAP due to probable security vulnerabilities, JMX was part of JBoss in their AS versions. I assume that you have deployed the JMX yourself onto your JBoss EAP server. So, definately, you will not get anything from JBoss EAP to secure your JMX access. But yes, you can implement your own username and passwrod authenticaiton.
Hope this helps.