IPv6 is a demand of the times, so many environments are not compatible with this new protocol. Now let's talk about how to support JBoss IPv6 in the network environment. For details, refer to our workshop. First, let's analyze several key points of implementation.
In the JBoss IPv6 network environment, IPv6 support mainly includes the following requirements:
1. Linux supports IPv6;
2. the Java Virtual Machine supports IPv6;
3. The JBoss Application Server supports IPv6;
To meet the requirements of the above three parts, IPv6 support can be ensured for the application.
At present, the first problem has been solved, and the Linux kernel can ensure IPv6 support.
For the second problem, considering that jdk 1.6 has a serious bug in IPv6 support in the Linux environment, you can search for JDK IPv6 bug), the jdk version must meet +. In this case, you can implement IPv6 support for Java virtual machines.
For the third problem, because JBoss4.2.2GA's target) JDK version is 1.5 ., according to the previous JDK1.5 and IPv6 bugs, JBoss cannot fully support IPv6. If JBoss is started through JDK1.6, many modules cannot start normally. At present, JBoss5.0.0.Beta4 development has been completed, but JBoss5.0.0 has greatly changed the core of the entire JBoss. Although JBoss5.0.0 can support IPv6 to some extent, this is not complete and JBoss5.0.0 has not been officially released, there are many bugs. In view of this, JBoss IPv6 Protocol cannot be fully supported.
Although the JBoss IPv6 Protocol cannot be fully supported, the network-only program running above can still implement IPv6. In addition to JSP and servlet in the Web Container, jms jndi, and so on, IPv4 can still be used ). So the solution is to upgrade JDK to 1.6 and start JBoss4.2.2GA. As a JBoss module startup exception occurs when JDK1.6 is started in the previous section, we need to solve the compatibility problem between JDK1.6 and JBoss4.2.2GA.
Major compatibility issues include:
1. A version conflict exists between the jaxb-api.jar and the default java. xml. binding package in JDK 1.6.
2. A version conflict exists between the saaj-api.jar and the java. xml. soap package that comes with JDK1.6 by default.
3. saaj-api.jar itself and JBoss built-in JBoss-saaj.jar conflict.
The solution is as follows:
1. Put the jaxb-api.jar package that the program depends on in the lib \ endorsed \ package under the JBoss directory, overwrite the default built-in java. xml. binding in JDK1.6.
2. the second and third problems are actually the same. The solution is to crop JDK1.6. The specific step is to copy the rt under jdk \ jre \ lib \ under the jdk directory. java. xml. delete the soap package. In the bin folder under the JBoss installation directory, modify the run. conf file and set the JAVA_HOME variable to point to the cropped JDK. For example:
JAVA_HOME="/home/wangwei/jboss-4.2.2.GA-IPv6Test/jdk1.6.0_06"