Question

TL;DR

Is it necessary to have an HTTP router module when deploying an EJB module containing web service implementations to WebSphere 7?

If so, is there a way to create/manage it without relying on IBM-specific files?


I have an application that is being restructured so that it can be built Maven. Currently, I am using was6-maven-plugin's endptEnabler goal to build an HTTP router module for an EJB module that contains some web services. This works well, but I just found out that the build machine we'll get to use won't actually have WebSphere installed on it. In the past this wouldn't have been a problem, since the router module had been developed manually by someone clicking a "Generate Router Module" button in RAD and then actually checking in the generated code into source control. With the Maven-centric build process, we thought it would be better to generate the module during the build process.

So now I am stuck: generating the router module via Maven seems a much cleaner approach but won't work on the build machine. I have a few options:

  1. Extract the generated WAR and add it to our enterprise repository and then create a dependency from my EJB to the WAR. I really don't like this, but it would probably work.

  2. Go back to having a realized HttpRouterModule project in the workspace. The problem with this is that the IBM-specific binding files have valid module IDs for my server, but I don't know if they'd cause problems on someone else's which is why I'd rather generate these files from Maven.

  3. Keep generating the router module with Maven, but find a way to generate it in a way such that there is no WebSphere dependency.

I'd prefer to go with the third option, but I'm not sure how I can generate the module and the binding files in generic way such that it will still be recognized by WebSphere.

I'm open to hearing about other options too...

Was it helpful?

Solution 2

All my research so far indicates that this is necessary in WebSphere 7, and in earlier versions. It looks like WebSphere 8 does not require HTTP router modules. We're going with the second option, as the build server won't be able to generate the router modules on its own.

Not ideal, but once we move to WAS8 this won't be necessary.

OTHER TIPS

As far as I know you need http router module. From my experience I was also unable to create the module manually. Is there no way you could install was7 dev server on your build machine? I believe it is free download from IBM.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top