I ran into a recursion error causing a JVM StackOverflowException.
Unfortunately, I am not sure of the regular expression that caused it and it
appears to be intermittent or based on the string being parsed. Here are
the regular expressions that we are using: ^$|^\d{10}$ (phone number),
^$|^[A-Z]{2}$ (state), ^\d{5}(-\d{4})?$ (zip). Here is the stack trace:
Java Thread ID = 0x00000880, lastJavaFrame = 0x9e7a70ec, Name =
ExecuteThread: '3' for queue: 'weblogic.kernel.Default'
Thread Stack Trace:
at jniObjMemcpy+3()@0x402bf763
at jrockit/vm/ArrayCopy.slowArraycopyPrimitive(Native Method)@0x217d4d50
at jrockit/vm/ArrayCopy.arraycopySafePrimitive2Array(Native
Method)@0x217d4ee2
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x278716a4
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
... A bunch more of the same ...
at org/apache/regexp/RECompiler.terminal(Optimized Method)@0x27d24d8c
at org/apache/regexp/RECompiler.closure(Optimized Method)@0x27870b73
at org/apache/regexp/RECompiler.branch(Optimized Method)@0x27d24969
at org/apache/regexp/RECompiler.expr(Optimized Method)@0x280d83d2
at org/apache/regexp/RECompiler.compile(Optimized Method)@0x280e2100
at org/apache/regexp/RE.<init>(RE.java:495)@0x25f32d31
at org/apache/regexp/RE.<init>(RE.java:480)@0x25f32d21
at com/qpass/common/validator/ValidatorGeneric.regularExp(Optimized
Method)@0x27aa1c31
at jrockit/reflect/NativeMethodInvoker.invoke0(Native Method)@0x21848110
at jrockit/reflect/NativeMethodInvoker.invoke(Optimized
Method)@0x2705cb74
at java/lang/reflect/Method.invoke(Optimized Method)@0x26e81abf
at com/qpass/common/validator/ValidatorRule.applyRule(Optimized
Method)@0x27c24dfe
at com/qpass/common/validator/ValidatorRuleBase.validate(Optimized
Method)@0x277aeb49
at com/qpass/common/validator/ValidatorRules.applyRules(Optimized
Method)@0x2779ec03
at com/qpass/common/validator/ValidatorRules.validate(Optimized
Method)@0x27939a61
at com/qpass/common/validator/ValidatorRules.validate(Optimized
Method)@0x2816d081
at
com/qpass/service/party/AddressEJB.setAddressInfo(AddressEJB.java:135)@0x260
bde5c
at
com/qpass/service/party/AddressEJB.ejbCreate(AddressEJB.java:79)@0x260bd9fb
at
com/qpass/service/party/AddressEJB_p2zm36__WebLogic_CMP_RDBMS.ejbCreate(Addr
essEJB_p2zm36__WebLogic_CMP_RDBMS.java:4410)@0x260bd921
at jrockit/reflect/NativeMethodInvoker.invoke0(Native Method)@0x21848110
at jrockit/reflect/NativeMethodInvoker.invoke(Optimized
Method)@0x2705cb74
at jrockit/reflect/VirtualNativeMethodInvoker.invoke(Optimized
Method)@0x26e83a11
at java/lang/reflect/Method.invoke(Optimized Method)@0x26e81abf
at weblogic/ejb20/manager/DBManager.create(Optimized Method)@0x27108015
at weblogic/ejb20/manager/DBManager.remoteCreate(Optimized
Method)@0x272871d4
at com/qpass/service/party/AddressEJB_p2zm36_HomeImpl.create(Optimized
Method)@0x276acc16
at com/qpass/system/party/PartySystemEJB.updateAddress(Optimized
Method)@0x2793346f
at
com/qpass/system/party/ConsumerSystemEJB_ny3aps_EOImpl.updateAddress(Optimiz
ed Method)@0x27a65861
at com/qpass/facility/ConsumerCareEJB.updateAddress(Optimized
Method)@0x2793a9de
at com/qpass/facility/ConsumerCareEJB.updateAddress(Optimized
Method)@0x2777d401
at
com/qpass/facility/ConsumerCareAPI_ob6llv_EOImpl.updateAddress(Optimized
Method)@0x279391f2
at
com/qpass/facility/ConsumerCareAPI_ob6llv_EOImpl_WLSkel.invoke(Optimized
Method)@0x27e18c6b
at weblogic/rmi/cluster/ReplicaAwareServerRef.invoke(Optimized
Method)@0x2738c8d6
at weblogic/rmi/internal/BasicServerRef$1.run(Optimized
Method)@0x271e925f
at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Optimized
Method)@0x2751348d
at weblogic/security/service/SecurityManager.runAs(Optimized
Method)@0x27106c01
at weblogic/rmi/internal/BasicServerRef.handleRequest(Optimized
Method)@0x2772cda1
at weblogic/rmi/internal/BasicExecuteRequest.execute(Optimized
Method)@0x26f83580
at weblogic/kernel/ExecuteThread.execute(Optimized Method)@0x27185e61
at weblogic/kernel/ExecuteThread.run(ExecuteThread.java:173)@0x218eaf3a
at java/lang/Thread.startThreadFromVM(Unknown Source)@0x217d9ab3
--- End of stack trace
I am not sure if this is a code problem or due to the jrocket optimization.
Any suggestions would be appreciated.
[EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]