The 2.1.0.SP1 release of Seam contained many features and updates, one of which is an updated Weblogic integration reference guide chapter

This update includes the latest information on integration with the new Weblogic Application server 10.3. Many Seam/Weblogic users were waiting expectantly for this release of Weblogic. There were several issues relating to EJB 3 support with wls 10.0.MP1, that were scheduled to be fixed in the 10.3 release.

The Good News

The good news is that the original varargs issue is fixed in this release and does not require a patch. For those of you not familiar with this Weblogic 10.0.MP1 ( and other earlier releases ) would fail to compile any EJB's that used variable arguments. For some reason weblogic's compiler would mistake this as if the method had a transient modifier, which being a method would fail to compile.

The Bad News

The bad news is that the fix for the other EJB3 issue found with 10.0.MP1 does not appear to have made the release. I can only image that with the BEA's purchase by Oracle a few of these changes were lost. Several Seam users have seen it, and my own investigation confirmed it.

This issue causes certain EJB methods to be incorrectly left out of Weblogic's generated internal stub classes. This occurs on the same files effected by the varargs issue, so I'm assuming it is related to their fix. This results in the following error messages during deployment.

<<Error> <EJB> <BEA-012036> <Compiling generated EJB classes produced the following Java compiler error message:
<Compilation Error> TimerServiceDispatcher_qzt5w2_Impl.java: The type TimerServiceDispatcher_qzt5w2_Impl must implement the inherited abstract method TimerServiceDispatcher_qzt5w2_Intf.scheduleTimedEvent(String, Schedule, Object[])
<Compilation Error> TimerServiceDispatcher_qzt5w2_LocalTimerServiceDispatcherImpl.java: Type mismatch: cannot convert from Object to Timer
<Compilation Error> TimerServiceDispatcher_qzt5w2_LocalTimerServiceDispatcherImpl.java: Type mismatch: cannot convert from Object to Timer> 
<Error> <Deployer> <BEA-149265> <Failure occurred in the execution of deployment request with ID '1223409267344' for task '0'. Error is: 'weblogic.application.ModuleException: Exception preparing module: EJBModule(jboss-seam.jar)

The Workaround

Since the EJB3 issues persist with 10.3 you have a couple of options for using EJB 3 with Weblogic and Seam.

  • Use the jboss-seam-wls-compatible.jar in place of the jboss-seam.jar as described in the Seam reference guide here : EJB3 Issues with WebLogic
  • Contact BEA's customer support and request a patch. There was a patch available for 10.0.MP1 release, and I would hope it is also available for 10.3

As always we well try to keep up to date with this issue, and when a patch or release is made public we'll review and update our documentation.


Back to top