WebSphere 8 tips
WebSphere 8 Auto Deploy #
Log in to the Admin console and click "Global deployment Settings" from the Applications section of the Left-Hand-Side navigation menu.
Check the "Monitor directory to automatically deploy applications". You can change the monitored directory too.
Click apply and save the changes to persist the settings to configuration repository. You will have to restart the server for the settings to take effect.
java.lang.NullPointerException on HookHotDeployListener #
If you experience the following exception:
Caused by: java.lang.NullPointerException at com.liferay.portal.deploy.hot.HookHotDeployListener$ServletFiltersContainer.registerFilter(HookHotDeployListener.java:2916) at com.liferay.portal.deploy.hot.HookHotDeployListener.doInvokeDeploy(HookHotDeployListener.java:820) at com.liferay.portal.deploy.hot.HookHotDeployListener.invokeDeploy(HookHotDeployListener.java:261) ...
then see next section.
Filter initalization on WebSphere #
On Websphere previous to 18.104.22.168, 22.214.171.124, and 126.96.36.199. there is a problem with filters - they are not initialized on web application startup; but on first access. In portal/portlet environment that might be a problem, for example when deploying some plugin).
In order to have servlet filters initialized on application startup (i.e. on deployment) you need to turn on this feature, by setting following webcontainer custom properties.
com.ibm.ws.webcontainer.initFilterBeforeInitServlet = true com.ibm.ws.webcontainer.invokeFilterInitAtStartup = true
Read more about this issue here:
However, thats might not be all! It make sense to delay execution of plugins web application, by setting the higher order. In WAS admin console select the plugin web app, go to Startup behavior and set Startup order to a higher number.
Set a webcontainer custom property #
On IBM WebSphere Application Server Version 7 or Version 8:
- In the administrative console, click "Servers" and under Servers click "Server Types" and under Server Types click "WebSphere application servers"
- Click on the server to which the custom property is to be applied
- Under "Configuration" and "Container settings" click "Web Container Settings" and under Web Container Settings click "Web container"
- Under "Configuration" and "Additional Properties" click "Custom Properties". In the Custom Properties page, click "New"
- In the settings page, enter the name of the custom property to be added in the "Name" field and the value to be set for the custom property in the "Value" field.
- Click "Apply" or "OK" . Click "Save" in the "Messages" box that appears
- Restart the server for the custom property to take effect
WAS 188.8.131.52 installation #
When portal is installed on WAS 184.108.40.206, the following exception is thrown:
Caused by: java.lang.VerifyError: JVMVRFY013 class loading constraint violated; class=org/springframework/aop/aspectj/MethodInvocationProceedingJoinPoint, method=getSourceLocation()Lorg/aspectj/lang/reflect/SourceLocation;, pc=0
There is a known issue documented under APAR PM90932. An ifix has been published for this issue and you can read about it and download it from HERE. Once the ifix is installed, the issue won't appear again.
Note: This fix (and others) is included in the automatic updates handled by the Installation Manager, as long as you return iteratively after each successfull set of updates is installed.