ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Large XSLTs giving cache problem

Post new topic  Reply to topic
 Large XSLTs giving cache problem « View previous topic :: View next topic » 
Author Message
team
PostPosted: Sun May 20, 2007 10:52 pm    Post subject: Large XSLTs giving cache problem Reply with quote

Centurion

Joined: 03 Nov 2006
Posts: 108

I'am trying to use XSLT in XML transformation node for performing a transformation requirement.

When I set the Stylesheet Cache Level to any value >0 the messages are failing to process where as with Stylesheet Cache Level = 0 the messages are getting processed succeffuly. Hence I reached the conclusion that the system is unable to cache the compiled XSLT due to its size.

Is there someway to increase the XSLT's cache size ?

Environment used - WINDOWS , WMB 6.0

Thanks in advance.
Back to top
View user's profile Send private message Yahoo Messenger
team
PostPosted: Sun May 20, 2007 11:25 pm    Post subject: Reply with quote

Centurion

Joined: 03 Nov 2006
Posts: 108

Further details that might help-
Size of the XSL file 165 KB
System RAM - 2 GB
Back to top
View user's profile Send private message Yahoo Messenger
XZ
PostPosted: Mon May 21, 2007 12:09 am    Post subject: Reply with quote

Apprentice

Joined: 22 May 2006
Posts: 45
Location: IBM Hursley

What is the actual failure message? It may not be a caching problem. With cache level > 0, you also activate the XSLT compiled processor, which may not support certain aspects of your style sheet. Check http://w3.xml.ibm.com/xsl/java/dist/xslt4j-2_6_9/docs/extensions_xsltc.html#constraints
for details.
_________________
Regards,

-XZ
WMQI Development
Back to top
View user's profile Send private message
team
PostPosted: Mon May 21, 2007 6:37 am    Post subject: Reply with quote

Centurion

Joined: 03 Nov 2006
Posts: 108

Following is the error messages I'am getting.

RecoverableException BIP4447E: XMLT node ''XMLTransformation'' encountered a problem during the transformation. The error message is ''Transformation failure when processing Stylesheet deployed

javax.xml.transform.TransformerConfigurationException: Could not load the translet class .
at org.apache.xalan.xsltc.trax.TemplatesImpl.defineTransletClasses(TemplatesImpl.java:323)
at org.apache.xalan.xsltc.trax.TemplatesImpl.getTransletInstance(TemplatesImpl.java:341)
at org.apache.xalan.xsltc.trax.TemplatesImpl.newTransformer(TemplatesImpl.java:374)
at org.apache.xalan.xsltc.trax.TemplatesImplProxy.newTransformer(TemplatesImplProxy.java:106)
at com.ibm.xsl.exmlt.StylesheetCache.getPreprocessedStylesheet(StylesheetCache.java:659)
at com.ibm.xsl.exmlt.ParseFacilitator.parseXmlStylesheet(ParseFacilitator.java:552)
at com.ibm.xsl.exmlt.ParseFacilitator.parse(ParseFacilitator.java:253)
at com.ibm.xsl.exmlt.EnhancedXMLTransform.transformWithStylesheet(EnhancedXMLTransform.java:801)
at com.ibm.xsl.exmlt.EnhancedXMLTransform.transformDocument(EnhancedXMLTransform.java:734)
at com.ibm.xsl.mqsi.XMLTransformData.transformData(XMLTransformData.java:734)
at com.ibm.xsl.mqsi.XMLTransformNode.evaluate(XMLTransformNode.java:940)
at com.ibm.broker.plugin.MbNode.evaluate(MbNode.java:1222)
at com.ibm.broker.plugin.MbOutputTerminal._propagate(Native Method)
at com.ibm.broker.plugin.MbOutputTerminal.propagate(MbOutputTerminal.java:140)
at com.ibm.mq.supportpacs.XMLValidatorNode.XMLValidatorNode.evaluate(XMLValidatorNode.java:156)
at com.ibm.broker.plugin.MbNode.evaluate(MbNode.java:1222)
''.
The transformation could not be completed.


My search says that this is an issue with the XALAN parser when run on jdk1.5. but I'am using jdk1.4 and I'am getting the error still.

This link 'http://w3.xml.ibm.com/xsl/java/dist/xslt4j-2_6_9/docs/extensions_xsltc.html#constraints' is no more available.
Kindly advice.
Back to top
View user's profile Send private message Yahoo Messenger
XZ
PostPosted: Mon May 21, 2007 7:21 am    Post subject: Reply with quote

Apprentice

Joined: 22 May 2006
Posts: 45
Location: IBM Hursley

This does look like a compilation failure rather than a caching problem.

The link I sent previously was IBM internal. My apology! Try this one instead: http://xml.apache.org/xalan-j/extensions_xsltc.html#constraints.
_________________
Regards,

-XZ
WMQI Development
Back to top
View user's profile Send private message
team
PostPosted: Mon May 21, 2007 9:51 pm    Post subject: Reply with quote

Centurion

Joined: 03 Nov 2006
Posts: 108

Thanks for that link.
I'am going through the same.

Just wanted to mention why I concluded that its could be a cache issue. I have a block in my XSLT that is repeating twice. If I put each instance of this block seperately then the XSLT is getting compiled properly. But when tried to put in together it refuses to compile.
I confirm that we are not delaing with any array instances or CARDINALITY.
Back to top
View user's profile Send private message Yahoo Messenger
XZ
PostPosted: Mon May 21, 2007 11:58 pm    Post subject: Reply with quote

Apprentice

Joined: 22 May 2006
Posts: 45
Location: IBM Hursley

Could be a Xalan bug. Have you tried compiling your style sheet using Xalan directly?
_________________
Regards,

-XZ
WMQI Development
Back to top
View user's profile Send private message
team
PostPosted: Wed May 23, 2007 4:36 am    Post subject: Reply with quote

Centurion

Joined: 03 Nov 2006
Posts: 108

I'am trying to run the transformation outside the broker using the xalan parser.

As per my understanding the WMB6.0 used XALAN 2.2 d11 and the latest version of XALAN available is 2.7

Is it possible to change the verison of the parser used by the XML transformation Node ?
Back to top
View user's profile Send private message Yahoo Messenger
XZ
PostPosted: Wed May 23, 2007 6:54 am    Post subject: Reply with quote

Apprentice

Joined: 22 May 2006
Posts: 45
Location: IBM Hursley

WMB V6 uses Xalan V2.6. It is very close to V2.7.
_________________
Regards,

-XZ
WMQI Development
Back to top
View user's profile Send private message
team
PostPosted: Thu May 24, 2007 10:55 pm    Post subject: Reply with quote

Centurion

Joined: 03 Nov 2006
Posts: 108

The XALAN version change is not helping me much with this issue.

Thinking of an alternate workaround using XSL includes or import.

I have now split the big XSL and I'am trying to include these with in a main xsl using the <xsl:include>.
This is working outside the broker but is not working when used with the XMLT node flows and deployed to the broker.

Any ideas if the <xsl:include> works with broker ?
Back to top
View user's profile Send private message Yahoo Messenger
XZ
PostPosted: Thu May 24, 2007 11:46 pm    Post subject: Reply with quote

Apprentice

Joined: 22 May 2006
Posts: 45
Location: IBM Hursley

Every thing should work if it works outside broker. Have you deployed the style sheets to be included as well? Which version have you used outside the broker? Make sure you upgrad to the latest service fix pack. I suggest you raise a PMR if this is still a problem.
_________________
Regards,

-XZ
WMQI Development
Back to top
View user's profile Send private message
nvenkatesh
PostPosted: Sat Jul 07, 2007 9:56 am    Post subject: Reply with quote

Apprentice

Joined: 29 Jan 2007
Posts: 45

We do have the same problem. When the xsl size is greater than 45KB approx. and the cache level property is set greater than zero in XMLTransformation node, We are getting the exception "Could not load the translet class" in the event viewer(not to forget mention that the broker version is 6.0.0.3 and the toolkit 6.0.2 with interim fixes. Hope this is the latest). Any further references to APAR's/help on this would be appreciated.
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Sat Jul 07, 2007 10:50 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Did you increase the EG JVM heap size, per the instructions in the reference on the XMLTransformation node in the Info Center?
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
nvenkatesh
PostPosted: Sun Jul 08, 2007 11:07 pm    Post subject: Reply with quote

Apprentice

Joined: 29 Jan 2007
Posts: 45

Jefflowrey,

I had already kept the JVM heap size to 1GB before executing the flow. Plz see the below output.

C:\Program Files\IBM\MQSI\6.0>mqsireportproperties WBRK6_DEFAULT_BROKER -e default -o ComIbmJVMManager -n jvmMaxHeapSize

1073741824

BIP8071I: Successful command completion.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Large XSLTs giving cache problem
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.