migrate from JBOSS AS6 to wild fly - jboss

I know its a very high level question, but it will be very much help full if somebody can help me to kick start the migration.
So please provide some links or use full hints to start with it.
Also if somebody knows about delta changes between JBOSS AS 6 to Wild fly.
Major change which i know that our application uses-
JBOSS AOP
JBOSS Interceptors
and binds it in jboss-aop.xml
like below
<bind pointcut="execution(public * *.DBDAO >updateBO(com.test.model.TestClass, com.test.model.TestClass2))">
<interceptor-ref name="TestInterceptor"/>
</bind>
which is not supported by wild fly now.
And so there must be other thing s which might not be supported by wild fly.
Thanks.

According documentation:
Replace JBoss AOP Interceptors
JBoss AOP (Aspect Oriented Programming) is no longer included in JBoss AS 7. In previous releases, JBoss AOP was used by the EJB container. However, in AS 7, the EJB container uses a new mechanism. If your application uses JBoss AOP, you need modify your application code as follows.
Standard EJB3 configurations that were made in the ejb3-interceptors-aop.xml file are now done in the server configuration file. For a standalone server, this is the standalone/configuration/standalone.xml file. If you are running your server in a managed domain, this is the domain/configuration/domain.xml file.
Applications that integrate AOP interceptors into the EJB layer must be redesigned to use EJB3 interceptors and CDI. Server side interceptors can be changed to EJB3 interceptors, but there is no client side interceptor in AS 7.
Like AOP exist other changes you can see in: How do I migrate my application from AS5 or AS6 to WildFly and Experiences with migrating from JBoss AS 7 to WildFly 8.1
The last link refers to some changes that are not in the official documentation.

Here is whole migration guide from Red Hat. JBoss EAP 6.2 has similar architecture to WildFly so you can use it:
https://access.redhat.com/documentation/en-US/JBoss_Enterprise_Application_Platform/6.2/html-single/Migration_Guide/index.html

Related

Which Application Server is used by Quarkus Internally?

Like Spring Boot uses Apache Tomcat, Undertow and Jetty and i have worked on an assignment of same. So just trying to map understanding.
What application server is used by Quarkus?
I have created an application in server and found Jboss libaries, Arjuna Libraries for transaction
which is used by Jboss servers or wildfly servers. But i am not sure whether it is based on Jboss.
Can anyone please clarify?
In short, Quarkus can be thought of as its own application server. However, it is comprised of many open source libraries that have been around for a while, such as:
RESTEasy for JAX-RS
Undertow for the Servlet/Websocket engine
Netty for the network IO layer
Hibernate for JPA
The full set of extensions can be found on the Quarkus Starter website.

Does Jboss 7.1 AS supports ejb 2.1?

it seems jboss AS 7.1 supports ejb 2.1.Our ejb 2.1 based application is deployed on jboss 5 AS. We are migrating it to jboss7.1. but i want to know what are the additional configurations required to run ejb 2.1 without any errors?
EJB2 is still supported in AS7.x, the issue might be that AS7 is a new implementation and some of the tuning options and configuations are not available for AS7 - especially the EntityBean CMP.
There are some added for EAP6 (based on AS7) you might download the unsupported version.
Wildfly (the successor of JBossAS) will not continue to support EJB2 EntityBeans because EJB3.2 declare it as optional.
Note EJB2 session beans are still supported but I recommend to upgrade it to EJB3 this should faily simple.
You might keep the EJB2 interfaces to provide an interface for EJB2 clients, but I expect effort for the client as well as the lookup Strings changed.
If the appliation should be kept for the future I would recommend to migrate to EJB3

Unit testing EJBs on Jboss 4.3?

Is there anything similar to Embedded Glassfish, where one can unit test EJBs, for Jboss 4.3 AS. I have googled and came to know about a tool Arquillian and later figured out that it doesnt support Jboss 4.3 container Check here. Is there any similar open source tool available to unit test EJBs on Jboss 4.3?
Firstly, the URL to the reference guide in your question is "a bit" out of date; please don't refer that since the list of supported containers, as well as other info is out of date. The Arquillian Reference Guide is hosted in Confluence where the list of supported container adapters is maintained.
Secondly, you're likely to have some success with the JBoss AS 4.2 containers, as reported by other users in the JBoss Community forum. There is no embedded container available for 4.x, since the embeddable EJB container was born out the EJB 3.1/Java EE 6 specification.

What are the most important differences between full AppServer (like JBossAS) and Seam?

If client of the system is on the web there are no advantages JBossAS+Seam over Tomcat+Seam?
Your questions suggests you're confused about what is what.
Seam is a framework for building web applications in Java.
JBoss AS is a Java EE application server.
Tomcat is a Java servlet container.
You can run Seam on either JBoss or Tomcat.
Since JBoss is a full EE app. server, you get certain features like Enterprise Java Beans out of the box with JBoss.
With Tomcat, you don't, but this isn't usually a big concern since, for example, Spring framework can replace Java EE if you need that functionality.
It does matter what you use, since the majority of your system will be probably coded in the back end (server side Java).
If you want the minimum amount of hassle when using Seam, I'd suggest using JBoss since that company made Seam.

Seam EJB3 in an EAR is it usable by another App?

Seam 2.1 and JBoss 4.2.2
I have set up the first App to have the EJB in the EAR with a local interface.
the 2nd app can look up JDNI name "ear-name/ejbname/local" but fails with "NoClassDefFound".
Does the EJB .jar need to be outside of the EAR?
Is this a classloader visibility issue or Is this a JBoss version issue? or something else?
Thank you for your thoughts..
I cannot answer if it will work or not. However, I can tell you how we do this.
We have created a #Webservice component that uses this EJB. And then we connect to the Webservice from our other application.
I blogged about this a while back. You can have a read if you are interested.