Struts 2.0.11.1 and OC4J 10.1.3.1 Bug

I have been using the Struts 2.0.11.1 framework to develop a new web application with on a Oracle OC4J 10.1.3.1 application server. Things have been working great for me during my initial development using JDeveloper Studio 10.1.3.3, which has a embedded OC4J 10.1.3.3 server in it.

What I found was that when I deployed the application to our test server, the application would not parse any of my url parameters. This obviously caused the application to not work. I now started to do some extensive research on what might be going wrong. I spent hours in Google doing search after search, and not finding much information on why the issue is happening.

I figured that the issue was something to do with OC4J, since the issue was not occurring in version 10.1.3.3 but did occur in version 10.1.3.1. I confirmed my assumption when I finally came across the following thread .

It appears that OC4J has a bug in version 10.1.3.0 through 10.1.3.2 with parsing url parameters when not being passed to or from a servlet. Since Struts 2.x uses filters as the only way to invoke a action, the url parameters were being stripped off. To fix this issue they suggest you download this patch.


http://updates.oracle.com/ARULink/PatchDetails/process_form?patch_num=5608209

Since this patch is only important to me, and my application, I doubt I can get the server group to install it for me. There are lots of applications on the server, and who knows what the patch will affect and so on.

So if you are having the same issue I am, you will be stuck using WebWork for a while, until you can get the application server upgraded. Webwork works just fine, but you have to make sure you use the web.xml 2.1 compatibility setup. I wish that Struts 2.x would include the 2.1 compatibility from Webwork in its release.

Posted on Apr 30, 2008 by Mike Jennings in Java | 0 Comments | Permalink