Hi,

we are experiencing a very strange problem just on our production
server, from time to time bindings/ognl starts giving strange
exceptions it does not give on our dev workstations. The problem is
also difficult to reproduce on production server so I think it might
be some race condition problem.


We are using tapetry 4.1.2 and latest stable OGNL. It might be worth
mentioning that the production server is 64bit (and obviously much
faster) than our poor workstations.

as an example of these exception take this component:

        <component id="mobile" type="Insert">
                <binding name="value">mobile</binding>
        </component>

the component is used on a page called ViewPoSPage having a
String getMobile() method.


This is the exception that comes out from time to time:

2007-10-23 09:41:35,947 ERROR
[org.apache.tapestry.services.impl.HiveMindExpressionCompiler] - Error
generating OGNL getter for expression mobile with root $ViewPoSPag
[EMAIL PROTECTED] and body:
{ return (($ViewPoSPage_149)$2).mobile();}
org.apache.hivemind.ApplicationRuntimeException: Unable to add method
java.lang.Object get(ognl.OgnlContext, java.lang.Object) to class
$ASTProperty_115c9fd5cb4: [sour
ce error] mobile() not found in $ViewPoSPage_149
        at 
org.apache.tapestry.enhance.ClassFabImpl.addMethod(ClassFabImpl.java:278)
        at 
org.apache.tapestry.services.impl.HiveMindExpressionCompiler.compileExpression(HiveMindExpressionCompiler.java:172)
        at ognl.OgnlRuntime.compileExpression(OgnlRuntime.java:498)
        at ognl.Ognl.compileExpression(Ognl.java:141)
        at 
org.apache.tapestry.services.impl.ExpressionCacheImpl.parse(ExpressionCacheImpl.java:152)
        at 
org.apache.tapestry.services.impl.ExpressionCacheImpl.getCompiledExpression(ExpressionCacheImpl.java:115)
        at 
$ExpressionCache_115c9fd5801.getCompiledExpression($ExpressionCache_115c9fd5801.java)
        at 
org.apache.tapestry.binding.ExpressionBinding.resolveExpression(ExpressionBinding.java:134)
        at 
org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBinding.java:125)
        at 
org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java:84)
        at $Insert_6.getValue($Insert_6.java)
        at org.apache.tapestry.components.Insert.renderComponent(Insert.java:48)
        at 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725)
        at 
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:180)

....


        at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
        at 
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
        at 
org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
        at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
        at java.lang.Thread.run(Thread.java:595)
Caused by: javassist.CannotCompileException: [source error] mobile()
not found in $ViewPoSPage_149
        at javassist.CtBehavior.setBody(CtBehavior.java:347)
        at javassist.CtBehavior.setBody(CtBehavior.java:316)
        at 
org.apache.tapestry.enhance.ClassFabImpl.addMethod(ClassFabImpl.java:272)
        ... 91 more
Caused by: compile error: mobile() not found in $ViewPoSPage_149
        at javassist.compiler.TypeChecker.atMethodCallCore(TypeChecker.java:716)
        at javassist.compiler.TypeChecker.atCallExpr(TypeChecker.java:681)
        at 
javassist.compiler.JvstTypeChecker.atCallExpr(JvstTypeChecker.java:156)
        at javassist.compiler.ast.CallExpr.accept(CallExpr.java:45)
        at javassist.compiler.CodeGen.doTypeCheck(CodeGen.java:235)
        at javassist.compiler.CodeGen.compileExpr(CodeGen.java:222)
        at javassist.compiler.CodeGen.atReturnStmnt2(CodeGen.java:591)
        at javassist.compiler.JvstCodeGen.atReturnStmnt(JvstCodeGen.java

the only "strange" thing I can see on the page is a

String mobile(Person person)

so I thought it might  have been
http://jira.opensymphony.com/browse/OGNL-129 but the signature as you
can see is different and the problem is not happening everytime...

Any suggestion?

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to