Labels
- Apache (10)
- Articles (4)
- BPM Tools (5)
- Glassfish (16)
- Hadoop (10)
- HP ALM (6)
- HP SOA Systinet (14)
- Issues (19)
- JAVA (85)
- JBoss (16)
- jQuery (4)
- Load Runner (37)
- Quality Center (49)
- Testing (24)
- Tips and Tricks (16)
- Tomcat (4)
- Usefull Links (18)
- Weblogic (41)
- WebSphere (2)
Wednesday, September 10, 2014
[org.hibernate.dialect.Oracle9Dialect] The Oracle9Dialect dialect has been deprecated; use either Oracle9iDialect or Oracle10gDialect instead
Solution:-
Please change in hibernate.cfg.xml file from
<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>
to <property name="dialect">org.hibernate.dialect.Oracle10gDialect</property>
Thursday, August 7, 2014
Jboss apache integration
Apache JBOSS integration
1) Download mod_jk module from
http://www.gtlib.gatech.edu/pub/apache/tomcat/tomcat-connectors/jk/binaries/linux/jk-1.2.28/i586/
2) Copy mod_jk-1.2.28-httpd-2.2.X.so to /opt/apacheconf
3) Edit the httpd.conf and add the following line
Include /opt/apacheconf/mod-jk.conf
4) Create /opt/apacheconf/mod-jk.conf file with the following content
LoadModule jk_module /opt/apacheconf/mod_jk-1.2.28-httpd-2.2.X.so
JkWorkersFile /opt/apacheconf/workers.properties
JkLogFile /opt/apachelogs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompatUnparsed -ForwardDirectories
JkRequestLogFormat "%w %V %T"
JkMountFile /opt/apacheconf/uriworkermap.properties
JkShmFile /opt/apachelogs/jk.shm
<Location /jkstatus>
JkMount status
#Order deny,allow
#Deny from all
#Allow from 127.0.0.1
</Location>
5) Create /opt/apacheconf/uriworkermap.properties file with the following content
# Simple worker configuration file
# Mount the Servlet context to the ajp13 worker
/jmx-console=loadbalancer
/jmx-console/*=loadbalancer
/web-console=loadbalancer
/web-console/*=loadbalancer
/testWeb/*=loadbalancer
!/testWeb/images/*=loadbalancer
6) Create /opt/apacheconf/workers.properties file with the following content
worker.list=loadbalancer,status
# Define Node1
# modify the host as your host IP or DNS name.
worker.node1.port=8009
worker.node1.host={jboss-server-ip-address goes here}
worker.node1.type=ajp13
worker.node1.lbfactor=1
worker.node1.prepost_timeout=10000 #Not required if using ping_mode=A
worker.node1.connect_timeout=10000 #Not required if using ping_mode=A
worker.node1.ping_mode=A #As of mod_jk 1.2.27
# worker.node1.connection_pool_size=10 (1)
# Define Node2
# modify the host as your host IP or DNS name.
#worker.node2.port=8009
#worker.node2.host= node2.mydomain.com
#worker.node2.type=ajp13
#worker.node2.lbfactor=1
#worker.node2.prepost_timeout=10000 #Not required if using ping_mode=A
#worker.node2.connect_timeout=10000 #Not required if using ping_mode=A
#worker.node2.ping_mode=A #As of mod_jk 1.2.27
# worker.node1.connection_pool_size=10 (1)
# Load-balancing behaviour
worker.loadbalancer.type=lb
#worker.loadbalancer.balance_workers=node1,node2
worker.loadbalancer.balance_workers=node1
# Status worker for managing load balancer
worker.status.type=status
The above configuration is to test with one app server functionally.
7) Update /opt/apacheconf/httpd-vhosts.conf with JkMount
Listen 9080
NameVirtualHost *
<VirtualHost *>
ServerName {server-name}
ServerAlias {alias}
JkMount /testWeb loadbalancer
JkMount /testWeb/* loadbalancer
</VirtualHost>
8) Update the following line to include jvmRoute in /opt/jboss-eap-5.0/jboss-as/server/default/deploy/jbossweb.sar/server.xml
<Engine name="jboss.web" defaultHost="localhost" jvmRoute="domain-name-goes-here">
9) Restart Apache and JBOSS server
10) Test the web server URL http://{domain-name}/testWeb/test.jsp
Apache 2.2.14 installation on RHEL 5 (statically linked Apache binary)
Apache 2.2.14 installation on RHEL 5 (statically linked Apache binary)
Benefit of a statically built Apache server is that at
compile time users have to examine all modules needed. This insures the
smallest memory footprint for the Apache binary, and can also result in a
more secure server by limiting exposure to loaded modules. Once you
build and run your Apache binary, you will know exactly the memory
footprint of each child or
worker
1) Create user
#useradd -m apacheadm
#passwd apacheadm
2) Login as apacheadm
3) Download httpd-2.2.14.tar.gz source distribution to /opt/software
4) Prepare for install
chmod 755 httpd-2.2.14.tar.gz
gunzip httpd-2.2.14.tar.gz
tar -xvf httpd-2.2.14.tar
rm httpd-2.2.14.tar
cd httpd-2.2.14
./configure --prefix=/opt/apache --enable-headers --enable-proxy --enable-rewrite --with-included-apr
make
make
Optional:
i) To include modules of your choice: ./configure --prefix=/opt/apache --with-included-apr --enable-ssl --enable-module=proxy
ii) Compile Apache for dynamic loading: ./configure --prefix=/opt/apache --enable-so
5) Install Apache
make install
References:
Apache website
F5 LTM deployment guide for Apache
How to Install JBoss 6 on Linux
This post will cover installing JBoss 6.0 on CentOS 5.x.
(If you are looking to install JBoss 7, please see my post here: http://www.davidghedini.com/pg/entry/install_jboss_7_on_centos)
We'll also set up JBoss to run as a service, as well as secure the JMX and Web Service consoles
While there are similarities to JBoss 5.1 installation, the file locations have changed in some instances
Here is an outline of the steps we will follow:
1. Download and Install the Java Development Kit (JDK)
2. Download and Install JBoss 6.0 Application Server
3. Create the user, jboss, who will own and run JBoss
4. Set the required JAVA_HOME and JBOSS_HOME paths
5. Create a start/stop/restart script for JBoss
6. Configure JBoss to run as a service
7. Access the JBoss Admin console
8. Change the JBoss Admin Password
9. Secure the JMX Console
10. Securing the Web Service Console
11. Set memory parameters for JBoss using JAVA_OPTS
12. Configure JBoss to run on port 80
(If you are looking to install JBoss 7, please see my post here: http://www.davidghedini.com/pg/entry/install_jboss_7_on_centos)
We'll also set up JBoss to run as a service, as well as secure the JMX and Web Service consoles
While there are similarities to JBoss 5.1 installation, the file locations have changed in some instances
Here is an outline of the steps we will follow:
1. Download and Install the Java Development Kit (JDK)
2. Download and Install JBoss 6.0 Application Server
3. Create the user, jboss, who will own and run JBoss
4. Set the required JAVA_HOME and JBOSS_HOME paths
5. Create a start/stop/restart script for JBoss
6. Configure JBoss to run as a service
7. Access the JBoss Admin console
8. Change the JBoss Admin Password
9. Secure the JMX Console
10. Securing the Web Service Console
11. Set memory parameters for JBoss using JAVA_OPTS
12. Configure JBoss to run on port 80
Step 1: Download and Install the Java Development Kit (JDK)
You can download the JDK here: http://www.oracle.com/technetwork/java/javase/downloads/index.html
I'm using JDK 6, update 24, the latest as of this post. The JDK is specific to 32 and 64 bit versions.
My CentOS box is 64 bit, so I'll need: jdk-6u24-linux-x64.bin.
If you are on 32 bit, you'll need: jdk-6u24-linux-i586.bin
Download the appropriate JDK and save it to a directory. I'm saving it to /root.
Move (mv) or copy (cp) the file to the /opt directory:
- [root@sv2 ~]# mv jdk-6u24-linux-x64.bin /opt/jdk-6u24-linux-x64.bin
Create the directory /usr/java.
- [root@sv2 ~]# mkdir /usr/java
Change to the /usr/java directory we created and install the JDK using 'sh /opt/jdk-6u24-linux-x64.bin'
- [root@sv2 ~]# cd /usr/java
- [root@sv2 java]# sh /opt/jdk-6u24-linux-x64.bin
We now have the JDK installed at /usr/java/jdk1.6.0_24. We'll use this for our JAVA_HOME a bit later in step
Step 2: Download and Install JBoss 6.0 Application Server
Download jboss-6.0.0.Final.zip at http://sourceforge.net/projects/jboss/files/JBoss/jboss-6.0.0.Final/ or use wget:
- [root@sv2 ~]# wget http://sourceforge.net/projects/jboss/files/JBoss/JBoss-6.0.0.Final/jboss-as-distribution-6.0.0.Final.zip/download
- .
- .
- .
- 100%[======================================>] 181,267,148 816K/s in 3m 31s
- 2011-03-13 00:56:44 (839 KB/s) - `jboss-as-distribution-6.0.0.Final.zip' saved [181267148/181267148]
Move (mv) or copy (cp) the file to /usr/share/jboss-6.0.0.Final.zip.
- [root@sv2 ~]# mv jboss-as-distribution-6.0.0.Final.zip /usr/share/jboss-as-distribution-6.0.0.Final.zip
Change to the /usr/share directory and unzip the file:
- [root@sv2 ~]# cd /usr/share
- [root@sv2 share]# unzip -q jboss-as-distribution-6.0.0.Final.zip
The unzip will create the following directory: /usr/share/jboss-6.0.0.Final
This directory will be our JBOSS_HOME, which we will use below in Step 4.
Step 3: Create the user, jboss, who will own and run JBoss
Since we will want to run JBoss as a non-root user with minimal privileges, we'll create a user, jboss, who will own the JBoss files and JBoss will run under his account.
To do this, we can need to the following.
Create a new group, jboss, and then create the user jboss and add the user to the jboss group.
- [root@sv2 ~]# groupadd jboss
- [root@sv2 ~]# useradd -s /bin/bash -g jboss jboss
Change ownership of the JBoss home directory, /usr/share/jboss-6.0.0.Final so all files are owned by the user jboss we created.
- [root@sv2 ~]# chown -Rf jboss.jboss /usr/share/jboss-6.0.0.Final/
Step 4: Set the required JAVA_HOME and JBOSS_HOME paths
We no need to set the JAVA_HOME and JBOSS_HOME.
The JAVA_HOME is where we installed the JDK above, /usr/java/jdk1.6.0_24, and the JBOSS_HOME is where we installed JBoss above /usr/share/jboss-6.0.0.Final.
Add the following to the jboss users .bash_profile:
- JAVA_HOME=/usr/java/jdk1.6.0_24
- export JAVA_HOME
- PATH=$JAVA_HOME/bin:$PATH
- export PATH
- JBOSS_HOME=/usr/share/jboss-6.0.0.Final
- export JBOSS_HOME
To set the JAVA_HOME for users, we add this to the user ~/.bashrc or ~/.bash_profile of the user. We can also add it /etc/profile and then source it to give to all users.
- JAVA_HOME=/usr/java/jdk1.6.0_24
- export JAVA_HOME
- PATH=$JAVA_HOME/bin:$PATH
- export PATH
Once you have added the above to ~/.bash_profile or ~/.bashrc, you should su to the user jboss and verify that the JAVA_HOME and JBOSS_HOME are set correctly.
- [root@sv2 ~]# su jboss
- [jboss@sv2 ~]# echo $JAVA_HOME
- /usr/java/jdk1.6.0_24
- [jboss@sv2 ~]# echo $JBOSS_HOME
- /usr/share/jboss-6.0.0.Final
Step 5: Create a start/stop/restart script for JBoss.
For our JBoss script we will simply copy the existing jboss_init_redhat.sh script located at at /usr/share/jboss-6.0.0.Final/bin, copy it to /etc/init.d and rename it to 'jboss':
So, as root:
- [root@sv2 ~]# cd /usr/share/jboss-6.0.0.Final/bin
- [root@sv2 bin]# cp jboss_init_redhat.sh /etc/init.d/jboss
In the jboss script (shown completed below), make the following changes:
1. Add lines 3,4, and 5:
# description: JBoss Start Stop Restart
# processname: jboss
# chkconfig: 234 20 80
2. Line 22, Set the JBOSS_HOME to where we unpacked JBoss in step 2 above:
JBOSS_HOME=${JBOSS_HOME:-"/usr/share/jboss-6.0.0.Final"}
3. Line 28. Set the JAVA_HOME to where we installed the JDK in step 1 above:
JAVAPTH=${JAVAPTH:-"/usr/java/jdk1.6.0_24"}
4. Add line 34, which sets the JBOSS_HOST to 0.0.0.0, allowing JBoss to bind to any IP.
JBOSS_HOST="0.0.0.0"
- #!/bin/sh
- #
- # description: JBoss Start Stop Restart
- # processname: jboss6
- # chkconfig: 234 20 80
- #
- # $Id: jboss_init_redhat.sh 81068 2008-11-14 15:14:35Z dimitris@jboss.org $
- #
- # JBoss Control Script
- #
- # To use this script run it as root - it will switch to the specified user
- #
- # Here is a little (and extremely primitive) startup/shutdown script
- # for RedHat systems. It assumes that JBoss lives in /usr/local/jboss,
- # it's run by user 'jboss' and JDK binaries are in /usr/local/jdk/bin.
- # All this can be changed in the script itself.
- #
- # Either modify this script for your requirements or just ensure that
- # the following variables are set correctly before calling the script.
- #define where jboss is - this is the directory containing directories log, bin, conf etc
- JBOSS_HOME=${JBOSS_HOME:-"/usr/share/jboss-6.0.0.Final"}
- #define the user under which jboss will run, or use 'RUNASIS' to run as the current user
- JBOSS_USER=${JBOSS_USER:-"jboss"}
- #make sure java is in your path
- JAVAPTH=${JAVAPTH:-"/usr/java/jdk1.6.0_24"}
- #configuration to use, usually one of 'minimal', 'default', 'all'
- JBOSS_CONF=${JBOSS_CONF:-"default"}
- #if JBOSS_HOST specified, use -b to bind jboss services to that address
- JBOSS_HOST="0.0.0.0"
- JBOSS_BIND_ADDR=${JBOSS_HOST:+"-b $JBOSS_HOST"}
- #define the classpath for the shutdown class
- JBOSSCP=${JBOSSCP:-"$JBOSS_HOME/bin/shutdown.jar:$JBOSS_HOME/client/jnet.jar"}
- #define the script to use to start jboss
- JBOSSSH=${JBOSSSH:-"$JBOSS_HOME/bin/run.sh -c $JBOSS_CONF $JBOSS_BIND_ADDR"}
- if [ "$JBOSS_USER" = "RUNASIS" ]; then
- SUBIT=""
- else
- SUBIT="su - $JBOSS_USER -c "
- fi
- if [ -n "$JBOSS_CONSOLE" -a ! -d "$JBOSS_CONSOLE" ]; then
- # ensure the file exists
- touch $JBOSS_CONSOLE
- if [ ! -z "$SUBIT" ]; then
- chown $JBOSS_USER $JBOSS_CONSOLE
- fi
- fi
- if [ -n "$JBOSS_CONSOLE" -a ! -f "$JBOSS_CONSOLE" ]; then
- echo "WARNING: location for saving console log invalid: $JBOSS_CONSOLE"
- echo "WARNING: ignoring it and using /dev/null"
- JBOSS_CONSOLE="/dev/null"
- fi
- #define what will be done with the console log
- JBOSS_CONSOLE=${JBOSS_CONSOLE:-"/dev/null"}
- JBOSS_CMD_START="cd $JBOSS_HOME/bin; $JBOSSSH"
- JBOSS_CMD_STOP=${JBOSS_CMD_STOP:-"java -classpath $JBOSSCP org.jboss.Shutdown --shutdown"}
- if [ -z "`echo $PATH | grep $JAVAPTH`" ]; then
- export PATH=$PATH:$JAVAPTH
- fi
- if [ ! -d "$JBOSS_HOME" ]; then
- echo JBOSS_HOME does not exist as a valid directory : $JBOSS_HOME
- exit 1
- fi
- echo JBOSS_CMD_START = $JBOSS_CMD_START
- case "$1" in
- start)
- cd $JBOSS_HOME/bin
- if [ -z "$SUBIT" ]; then
- eval $JBOSS_CMD_START >${JBOSS_CONSOLE} 2>&1 &
- else
- $SUBIT "$JBOSS_CMD_START >${JBOSS_CONSOLE} 2>&1 &"
- fi
- ;;
- stop)
- if [ -z "$SUBIT" ]; then
- $JBOSS_CMD_STOP
- else
- $SUBIT "$JBOSS_CMD_STOP"
- fi
- ;;
- restart)
- $0 stop
- $0 start
- ;;
- *)
- echo "usage: $0 (start|stop|restart|help)"
- esac
Step 6: Run JBoss as a Service.
To run JBoss as a service and enable start up at boot, make the script we created above executable and add it to our chkconfig so it starts at boot.
- [root@sv2 init.d]# chmod 755 jboss
- [root@sv2 init.d]# chkconfig --add jboss
- [root@sv2 init.d]# chkconfig --level 234 jboss on
We should now be able to Start, Stop, and Restart JBoss as a service.
Start JBoss:
Note: JBoss can take some time to start.
- [root@sv2 init.d]# service jboss6 start
- JBOSS_CMD_START = cd /usr/share/jboss-6.0.0.Final/bin; /usr/share/jboss-6.0.0.Final/bin/run.sh -c default -b 0.0.0.0
Stop JBoss:
- [root@sv2 init.d]# service jboss6 stop
- JBOSS_CMD_START = cd /usr/share/jboss-6.0.0.Final/bin; /usr/share/jboss-6.0.0.Final/bin/run.sh -c default -b 0.0.0.0
- Shutdown message has been posted to the server.
- Server shutdown may take a while - check logfiles for completion
Step 7: Access the JBoss Admin.
Make sure JBoss is started and you should now be able to access the Jboss Console at:
http://yourdomain.com:8080 or http://yourip:8080
The default user name and password for the JBoss Admin Console is admin/admin
Access the Admin Console by clicking on the Administration Console link.
Step 8: Change the JBoss Admin Password
To change the default Admin Console password, go to:
/usr/share/jboss-6.0.0.Final/server/default/conf/props
Open the jmx-console-users.properties file in text editor and change the password.
- # A sample users.properties file for use with the UsersRolesLoginModule
- admin=MyPassword
Step 9: Secure the JMX Console
To secure the JMX Console, go to:
/usr/share/jboss-6.0.0.Final/common/deploy/jmx-console.war/WEB-INF
First, edit the web.xml file. Towards the bottom, you will find the security-constraint as shown below:
- <!-- A security constraint that restricts access to the HTML JMX console
- to users with the role JBossAdmin. Edit the roles to what you want and
- uncomment the WEB-INF/jboss-web.xml/security-domain element to enable
- secured access to the HTML JMX console.
- <security-constraint>
- <web-resource-collection>
- <web-resource-name>HtmlAdaptor</web-resource-name>
- <description>An example security config that only allows users with the
- role JBossAdmin to access the HTML JMX console web application
- </description>
- <url-pattern>/*</url-pattern>
- </web-resource-collection>
- <auth-constraint>
- <role-name>JBossAdmin</role-name>
- </auth-constraint>
- </security-constraint>
- -->
Un-comment the security-constraint section so it appears thus:
- <security-constraint>
- <web-resource-collection>
- <web-resource-name>HtmlAdaptor</web-resource-name>
- <description>An example security config that only allows users with the
- role JBossAdmin to access the HTML JMX console web application
- </description>
- <url-pattern>/*</url-pattern>
- </web-resource-collection>
- <auth-constraint>
- <role-name>JBossAdmin</role-name>
- </auth-constraint>
- </security-constraint>
Next, still in the WEB-INF directory, edit the jboss-web.xml file, which will look as below:
- <!DOCTYPE jboss-web PUBLIC
- "-//JBoss//DTD Web Application 5.0//EN"
- "http://www.jboss.org/j2ee/dtd/jboss-web_5_0.dtd">
- <jboss-web>
- <!-- Uncomment the security-domain to enable security. You will
- need to edit the htmladaptor login configuration to setup the
- login modules used to authentication users.
- <security-domain>java:/jaas/jmx-console</security-domain>
- -->
- </jboss-web>
Uncomment the security-domain so it appears thus:
<pre class="js" name="code"><!DOCTYPE jboss-web PUBLIC "-//JBoss//DTD Web Application 5.0//EN" "http://www.jboss.org/j2ee/dtd/jboss-web_5_0.dtd"> <jboss-web> <security-domain>java:/jaas/jmx-console</security-domain> </jboss-web>
At this point, the password for the JMX Console will be the same as the password we set for the Admin Console in step 8 above.
Both the Admin Console and JMX Console are are using the jmx-console-roles.properties and jmx-console-users.properties files.
Step 10: Secure the Web Service Console
To secure the Web Service Console, go to:
/usr/share/jboss-6.0.0.Final/common/deploy/jbossws-console.war/WEB-INF
First, edit the web.xml file. Towards the bottom, you will find the security-constraint as shown below:
- <!-- A security constraint that restricts access
- <security-constraint>
- <web-resource-collection>
- <web-resource-name>ContextServlet</web-resource-name>
- <description>An example security config that only allows users with the
- role 'friend' to access the JBossWS console web application
- </description>
- <url-pattern>/*</url-pattern>
- </web-resource-collection>
- <auth-constraint>
- <role-name>friend</role-name>
- </auth-constraint>
- </security-constraint>
- -->
Un-comment the security-constraint section so it appears thus:
- <security-constraint>
- <web-resource-collection>
- <web-resource-name>ContextServlet</web-resource-name>
- <description>An example security config that only allows users with the
- role 'friend' to access the JBossWS console web application
- </description>
- <url-pattern>/*</url-pattern>
- </web-resource-collection>
- <auth-constraint>
- <role-name>friend</role-name>
- </auth-constraint>
- </security-constraint>
Next, still in the WEB-INF directory, edit the jboss-web.xml file, which will look as below:
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <!DOCTYPE jboss-web
- PUBLIC "-//JBoss//DTD Web Application 2.3V2//EN"
- "http://www.jboss.org/j2ee/dtd/jboss-web_3_2.dtd">
- <jboss-web>
- <!-- A security domain that restricts access
- <security-domain>java:/jaas/JBossWS</security-domain>
- -->
- <context-root>jbossws</context-root>
- </jboss-web>
Uncomment the security-domain so it appears thus:
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <!DOCTYPE jboss-web
- PUBLIC "-//JBoss//DTD Web Application 2.3V2//EN"
- "http://www.jboss.org/j2ee/dtd/jboss-web_3_2.dtd">
- <jboss-web>
- <security-domain>java:/jaas/JBossWS</security-domain>
- <context-root>jbossws</context-root>
- </jboss-web>
The default user name and password are kermit/thefrog
To change this, go to:
/usr/share/jboss-6.0.0.Final/server/default/conf/props
Open jbossws-roles.properties in a text editor it should appear as below.
- # A sample roles.properties file for use with the UsersRolesLoginModule
- kermit=friend
Change 'kermit' to a new user name. For example, we'll change it to 'mywsuser' as shown below:
- # A sample roles.properties file for use with the UsersRolesLoginModule
- mywsuser=friend
Open jbossws-users.properties in a text editor it should appear as below.
- # A sample users.properties file for use with the UsersRolesLoginModule
- kermit=thefrog
Change 'kermit' to our new user name 'mywsuser' and change the password. For example, we'll change the password to it to 'MyWsPassword' as shown below:
- # A sample users.properties file for use with the UsersRolesLoginModule
- mywsuser=MyWsPassword
Step 11: Set JAVA_OPTS Memory Parameters
To set the memory limits for JBoss, go to: /usr/share/jboss-6.0.0.Final/bin
Open the run.sh file in a text editor.
Find the section below:
- # Setup JBoss specific properties
- JAVA_OPTS="-Dprogram.name=$PROGNAME $JAVA_OPTS"
Directly below this, add the desired parameters.
- # Setup JBoss specific properties
- JAVA_OPTS="-Dprogram.name=$PROGNAME $JAVA_OPTS"
- JAVA_OPTS="$JAVA_OPTS -Xms128m -Xmx256m"
I'm installing this on a small VPS so I'm using JAVA_OPTS="$JAVA_OPTS -Xms128m -Xmx256m". You should set this to whatever is appropriate to your server and application.
Step 12: Running JBoss on Port 80.
To run services below port 1024 as user other than root, you can use port forwarding.
You can do this by adding the following to your IP tables:
- [root@sv2 ~]# iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
- [root@sv2 ~]# iptables -t nat -A PREROUTING -p udp -m udp --dport 80 -j REDIRECT --to-ports 8080
Wednesday, July 23, 2014
org.apache.jasper.JasperException: PWC6345: There is an error in invoking javac. A full JDK (not just JRE) is required
2014-07-24T10:48:55.420+0530] [glassfish 4.0] [WARNING] [] [javax.enterprise.web] [tid: _ThreadID=21 _ThreadName=http-listener-1(3)] [timeMillis: 1406179135420] [levelValue: 900] [[
StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: PWC6345: There is an error in invoking javac. A full JDK (not just JRE) is required
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:92)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:378)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:119)
at org.apache.jasper.compiler.Jsr199JavaCompiler.compile(Jsr199JavaCompiler.java:208)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:384)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:453)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:625)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:318)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Unknown Source)
]]
StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: PWC6345: There is an error in invoking javac. A full JDK (not just JRE) is required
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:92)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:378)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:119)
at org.apache.jasper.compiler.Jsr199JavaCompiler.compile(Jsr199JavaCompiler.java:208)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:384)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:453)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:625)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:318)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Unknown Source)
]]
Friday, June 13, 2014
If the host names or IP addresses of ALM server and database server are changed.
Recently our ALM POC server DB got changed from one server to other server. Inorder to point to new server we followed below steps to point to the new server.
Solution :
Step 1: Change siteadmin.xml
Login to the ALM server where ALM is installed and navigate to the below path
"C:\ProgramData\HP\ALM\jboss\server\default\deploy\20qcbin.war\WEB-INF\siteadmin.xml".
We need to change the content inside the tag "<DbUrl>DbUrl>", which will change the IP address of the DB server that contains siteadmin DB.
Access to DB server. Open siteadmin DB, then modify the IP address or hostname of DB server under the table "DBSERVERS"
Access to DB server. Open siteadmin DB, then modify the IP address and hostname of DB server under the table "PROJECTS"
Solution :
Step 1: Change siteadmin.xml
Login to the ALM server where ALM is installed and navigate to the below path
"C:\ProgramData\HP\ALM\jboss\server\default\deploy\20qcbin.war\WEB-INF\siteadmin.xml".
We need to change the content inside the tag "<DbUrl>DbUrl>", which will change the IP address of the DB server that contains siteadmin DB.
Step 2: Change DBSERVERS table
Access to DB server. Open siteadmin DB, then modify the IP address or hostname of DB server under the table "DBSERVERS"
Step 3: Change PROJECTS table
Access to DB server. Open siteadmin DB, then modify the IP address and hostname of DB server under the table "PROJECTS"
Step 4: Restart ALM service.
Now the ALM will points to New DB Server
Tuesday, June 10, 2014
What are the 3rd party software products we can integrate with ALM/QC?
IBM ReqPro
BM Rational Team Concert
IBM Rational Req. Composer
IBM DOORS
Atlassian JIRA
Atlassian GreenHopper
Selenium
Rally
Serena
Version One
BugZilla
TeamForge
IRIS
Microsoft TFS
ARIS
BluePrint
Caliber Requirements Manager
Remedy
Proprietary
BM Rational Team Concert
IBM Rational Req. Composer
IBM DOORS
Atlassian JIRA
Atlassian GreenHopper
Selenium
Rally
Serena
Version One
BugZilla
TeamForge
IRIS
Microsoft TFS
ARIS
BluePrint
Caliber Requirements Manager
Remedy
Proprietary
Subscribe to:
Posts (Atom)