APAR status
Closed as program error.
Error description
The evaluation of a stylesheet containing regular expressions that use character class subtraction may result in a RuntimeException being thrown. StackTrace segment: ------------------- java.lang.RuntimeException: [ERR 0538][ERR FORX0002] The regular expression is invalid. at com.ibm.xtq.xslt.runtime.v2.BasisLibrary2. runTimeError(BasisLibrary2.java:273) at com.ibm.xtq.xslt.runtime.v2.BasisLibrary2. matchesF(BasisLibrary2.java:435) at sun.reflect.NativeMethodAccessorImpl. invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl. invoke(NativeMethodAccessorImpl.java:79) at sun.reflect.DelegatingMethodAccessorImpl. invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:618) at com.ibm.xylem.instructions. StaticMethodInvocationInstruction. evaluate(StaticMethodInvocationInstruction.java:258) ...
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All users of the IBM WebSphere Application * * Server v7.0 Feature Pack for XML 1.0. * **************************************************************** * PROBLEM DESCRIPTION: RuntimeException may be thrown during * * stylesheet evaluation if regular * * expressions containing char class * * subtraction are used. * **************************************************************** * RECOMMENDATION: Install a fix pack that contains this APAR. * **************************************************************** While evaluating a stylesheet containing regular expressions which use character class subtraction (for example, "[A-Z-[IO]]") a RuntimeException may be thrown: java.lang.RuntimeException: java.lang.RuntimeException: [ERR 0538][ERR FORX0002] The regular expression is invalid. at com.ibm.xylem.instructions.StaticMethodInvocationInstruction.eva luate(StaticMethodInvocationInstruction.java:282) at com.ibm.xylem.instructions.LetBaseInstruction.evaluate(LetBaseIn struction.java:320) at com.ibm.xylem.instructions.ModuleFunctionCallInstruction.evaluat e(ModuleFunctionCallInstruction.java:227) at com.ibm.xylem.instructions.ModuleFunctionCallInstruction.evaluat e(ModuleFunctionCallInstruction.java:249) at com.ibm.xtq.xslt.xylem.instructions.xdm.XDMSequenceInstruction.e valuate(XDMSequenceInstruction.java:511) at com.ibm.xtq.xslt.xylem.instructions.xdm.XDMSequenceInstruction.e valuate(XDMSequenceInstruction.java:511) at com.ibm.xtq.xslt.xylem.instructions.nodeconstructors.CreateEleme ntInstruction.evaluate(CreateElementInstruction.java:404) at com.ibm.xylem.instructions.OnceInstruction.evaluate(OnceInstruct ion.java:186) at com.ibm.xtq.xslt.xylem.instructions.xdm.ConstructXDMItemNodeInst ruction.evaluate(ConstructXDMItemNodeInstruction.java:158) at com.ibm.xtq.xslt.xylem.instructions.xdm.XDMSequenceInstruction.e valuate(XDMSequenceInstruction.java:511) at com.ibm.xtq.xslt.xylem.instructions.xdm.XDMSequenceInstruction.e valuate(XDMSequenceInstruction.java:511) at com.ibm.xtq.xslt.xylem.instructions.xdm.XDMSequenceInstruction.e valuate(XDMSequenceInstruction.java:511) at com.ibm.xtq.xslt.xylem.instructions.nodeconstructors.CreateEleme ntInstruction.evaluate(CreateElementInstruction.java:404) at com.ibm.xtq.xslt.xylem.instructions.nodeconstructors.CreateEleme ntInstruction.evaluate(CreateElementInstruction.java:326) at com.ibm.xtq.xslt.xylem.instructions.nodeconstructors.CreateEleme ntInstruction.evaluate(CreateElementInstruction.java:409) at com.ibm.xylem.instructions.OnceInstruction.evaluate(OnceInstruct ion.java:186) at com.ibm.xtq.xslt.xylem.instructions.xdm.ConstructXDMItemNodeInst ruction.evaluate(ConstructXDMItemNodeInstruction.java:158) at com.ibm.xtq.xslt.xylem.instructions.xdm.XDMSequenceInstruction.e valuate(XDMSequenceInstruction.java:511) at com.ibm.xtq.xslt.xylem.instructions.xdm.XDMSequenceInstruction.e valuate(XDMSequenceInstruction.java:511) at com.ibm.xylem.instructions.LetBaseInstruction.evaluate(LetBaseIn struction.java:358) at com.ibm.xylem.instructions.FunctionCallInstruction.evaluate(Func tionCallInstruction.java:737) at com.ibm.xylem.instructions.ChooseInstruction.evaluate(ChooseInst ruction.java:527) at com.ibm.xylem.instructions.LetBaseInstruction.evaluate(LetBaseIn struction.java:358) at com.ibm.xylem.instructions.ChooseInstruction.evaluate(ChooseInst ruction.java:527) at com.ibm.xylem.instructions.LetBaseInstruction.evaluate(LetBaseIn struction.java:358) at com.ibm.xtq.xslt.xylem.instructions.xdm.ForEachXDMSequenceInstru ction.evaluate(ForEachXDMSequenceInstruction.java:217) at com.ibm.xylem.instructions.LetBaseInstruction.evaluate(LetBaseIn struction.java:358) at com.ibm.xylem.instructions.FunctionCallInstruction.evaluate(Func tionCallInstruction.java:737) at com.ibm.xylem.instructions.ChooseInstruction.evaluate(ChooseInst ruction.java:527) at com.ibm.xylem.instructions.ChooseInstruction.evaluate(ChooseInst ruction.java:534) at com.ibm.xylem.instructions.ChooseInstruction.evaluate(ChooseInst ruction.java:534) at com.ibm.xylem.instructions.ChooseInstruction.evaluate(ChooseInst ruction.java:534) at com.ibm.xylem.instructions.LetBaseInstruction.evaluate(LetBaseIn struction.java:358) at com.ibm.xtq.xslt.xylem.instructions.xdm.ForEachXDMSequenceInstru ction.evaluate(ForEachXDMSequenceInstruction.java:217) at com.ibm.xtq.xslt.xylem.instructions.xdm.ForEachXDMSequenceInstru ction.evaluate(ForEachXDMSequenceInstruction.java:186) at com.ibm.xylem.instructions.LetBaseInstruction.evaluate(LetBaseIn struction.java:326) at com.ibm.xylem.instructions.FunctionCallInstruction.evaluate(Func tionCallInstruction.java:680) at com.ibm.xylem.instructions.ChooseInstruction.evaluate(ChooseInst ruction.java:504) at com.ibm.xylem.instructions.ChooseInstruction.evaluate(ChooseInst ruction.java:510) at com.ibm.xylem.instructions.LetBaseInstruction.evaluate(LetBaseIn struction.java:326) at com.ibm.xtq.xslt.runtime.InterpretedTranslet.doEvaluate(Interpre tedTranslet.java:132) at com.ibm.xtq.xslt.runtime.AbstractTranslet.evaluate(AbstractTrans let.java:916) at com.ibm.xtq.xslt.drivers.XSLTExecutable.execute(XSLTExecutable.j ava:134) at com.ibm.xtq.xslt.drivers.XSLTExecutable.execute(XSLTExecutable.j ava:87) ... 9 more Caused by: java.lang.RuntimeException: [ERR 0538][ERR FORX0002] The regular expression is invalid. at com.ibm.xtq.xslt.runtime.v2.BasisLibrary2.runTimeError(BasisLibr ary2.java:273) at com.ibm.xtq.xslt.runtime.v2.BasisLibrary2.matchesF(BasisLibrary2 .java:435) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor Impl.java:79) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod AccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:618) at com.ibm.xylem.instructions.StaticMethodInvocationInstruction.eva luate(StaticMethodInvocationInstruction.java:258) ... 52 more
Problem conclusion
The regular expression language defined for XQuery 1.0 and XPath 2.0 requires that implementations support character class subtraction. The support in the regular expression library was not being exposed to the XSLT processor which caused it to report that regular expressions using this feature are invalid. This was fixed by activating the support for character class subtraction in the regular expression library. The fix for this APAR is currently targeted for inclusion in fix pack 1.0.0.1. Please refer to the Recommended Updates page for delivery information: http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
Temporary fix
Comments
APAR Information
APAR number
PM02610
Reported component name
XML FEATUREPACK
Reported component ID
5724J0856
Reported release
700
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2009-12-02
Closed date
2009-12-09
Last modified date
2009-12-09
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
XML FEATUREPACK
Fixed component ID
5724J0856
Applicable component levels
R700 PSY
UP
[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SUPPORT","label":"IBM Worldwide Support"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"1.0","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
09 February 2022