You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Velle Andrè <An...@netcom-gsm.no> on 2003/10/16 12:34:04 UTC

Flow problem on Weblogic 8.1

Hi,
 
On BEA Weblogic (tried 7.0 and 8.1) I get the following error when trying the flow example, for instance the jxforms wizard example::
 
 "Continuation" is not defined 
org.apache.avalon.framework.CascadingRuntimeException: "Continuation" is not defined.

cause: undefined: "Continuation" is not defined. (resource://org/apache/cocoon/components/flow/javascript/fom/fom_system.js; line 1)

Stacktrace:
org.apache.avalon.framework.CascadingRuntimeException: "Continuation" is not defined.
	at org.apache.cocoon.components.flow.javascript.fom.FOM_JavaScriptInterpreter.callFunction(FOM_JavaScriptInterpreter.java:581)
	at org.apache.cocoon.components.treeprocessor.sitemap.CallFunctionNode.invoke(CallFunctionNode.java:181)
	at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:84)
	at org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:164)
	at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:108)
	at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:163)
	at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:108)
	at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:161)
	at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:351)
	at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:304)
	at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:130)
....
 
The install is a complete standard exploded web application, as per the wiki. All examples that doesn't include flow runs perfectly. I've seen the same complaint from others, but have not been able to find a solution. So I've tested a bit myself.
The problem seems to be classloading from javascript in general. If i add the rhino...jar to the bootclasspath, I instead get (with the jxform wizard example):
 
 "resource://org/apache/cocoon/components/jxforms/flow/javascript/JXForm.js", line 51: uncaught JavaScript exception: at top-level script (file:/C:/dev/nkr/POC/build/kaldipoc/registration/registration.js, Line 3): org.mozilla.javascript.EvaluatorException: "resource://org/apache/cocoon/components/jxforms/flow/javascript/JXForm.js", line 51: Class "org.apache.cocoon.components.jxforms.flow.javascript.JXForm" not found. 
 
So, the problem has just comes a little bit later. Adding every jar to the bootclasspath is obviously not a workable solution, so I'm stumped. Fiddling around with the order of class loading in weblogic has not produced a solution either. Does anyone know classloading from javascripts well enough to suggest a workaround? 
 
 
Regards,
André Velle

Re: Flow problem on Weblogic 8.1

Posted by Sylvain Wallez <sy...@anyware-tech.com>.
Christopher Oliver wrote:

> Welcome to classpath hell :( The problem seems to be that Weblogic 
> server's class loader exposes its own copy of Rhino so the version 
> packaged with Cocoon is not used. In my opinion, this is fundamentally 
> a bug with BEA's product. However that opinion doesn't help you much. 
> This problem is compounded by the fact that BEA also has a forked 
> version of Rhino so you can't just
> replace the Weblogic rhino jar with the one from Cocoon or you'll 
> break parts of Weblogic.


So the simple solution may be to use the ParanoidCocoonServlet !

It was made just for solving this jar hell, by loading the Cocoon 
servlet (or any other servlet) in a "shielding" classloader that will 
load everything (class and resources) from WEB-INF first and from 
upper-level classloaders next.

Sylvain

-- 
Sylvain Wallez                                  Anyware Technologies
http://www.apache.org/~sylvain           http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
Orixo, the opensource XML business alliance  -  http://www.orixo.com



Re: Flow problem on Weblogic 8.1

Posted by Christopher Oliver <re...@verizon.net>.
Welcome to classpath hell :( The problem seems to be that Weblogic 
server's class loader exposes its own copy of Rhino so the version 
packaged with Cocoon is not used. In my opinion, this is fundamentally a 
bug with BEA's product. However that opinion doesn't help you much. This 
problem is compounded by the fact that BEA also has a forked version of 
Rhino so you can't just
 replace the Weblogic rhino jar with the one from Cocoon or you'll break 
parts of Weblogic.



Velle Andrè wrote:

> Hi,
>  
> On BEA Weblogic (tried 7.0 and 8.1) I get the following error when 
> trying the flow example, for instance the jxforms wizard example::
>  
>  "Continuation" is not defined
>
> org.apache.avalon.framework.CascadingRuntimeException: "Continuation" 
> is not defined.
>
> cause: undefined: "Continuation" is not defined. 
> (resource://org/apache/cocoon/components/flow/javascript/fom/fom_system.js; 
> line 1)
>
> Stacktrace:
>
>org.apache.avalon.framework.CascadingRuntimeException: "Continuation" is not defined.
>	at org.apache.cocoon.components.flow.javascript.fom.FOM_JavaScriptInterpreter.callFunction(FOM_JavaScriptInterpreter.java:581)
>	at org.apache.cocoon.components.treeprocessor.sitemap.CallFunctionNode.invoke(CallFunctionNode.java:181)
>	at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:84)
>	at org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:164)
>	at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:108)
>	at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:163)
>	at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:108)
>	at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:161)
>	at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:351)
>	at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:304)
>	at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:130)
>
>....
>
>  
> The install is a complete standard exploded web application, as per 
> the wiki. All examples that doesn't include flow runs perfectly. I've 
> seen the same complaint from others, but have not been able to find a 
> solution. So I've tested a bit myself.
> The problem seems to be classloading from javascript in general. If i 
> add the rhino...jar to the bootclasspath, I instead get (with the 
> jxform wizard example):
>  
>  "resource://org/apache/cocoon/components/jxforms/flow/javascript/JXForm.js", 
> line 51: uncaught JavaScript exception: at top-level script 
> (file:/C:/dev/nkr/POC/build/kaldipoc/registration/registration.js, 
> Line 3): org.mozilla.javascript.EvaluatorException: 
> "resource://org/apache/cocoon/components/jxforms/flow/javascript/JXForm.js", 
> line 51: Class 
> "org.apache.cocoon.components.jxforms.flow.javascript.JXForm" not found.
>  
> So, the problem has just comes a little bit later. Adding every jar to 
> the bootclasspath is obviously not a workable solution, so I'm 
> stumped. Fiddling around with the order of class loading in weblogic 
> has not produced a solution either. Does anyone know classloading from 
> javascripts well enough to suggest a workaround?
>  
>  
> Regards,
> André Velle