XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Conferences Close Tree View
+ Stylus Studio Feature Requests (1192)
- Stylus Studio Technical Forum (14621)
-> + JVM detection not finding JDK ... (2)
-> - stylus studio version 2011 pro... (1)
-> - WSDL 2.0 (1)
-> + Special characters in xml (2)
-> + cannot connect to mysql commun... (2)
-> + create a report from an existi... (2)
-> + Content not allowed in prolog (2)
-> + DB IInformix with database loc... (8)
-> + Stylus Report Designer (XML Re... (4)
-> - error: cos-nonambig: Content m... (1)
-> - UNIX .csv conversion and java ... (1)
-> + Nillable element, Validation e... (2)
-> + EDI Converter Error (2)
-> - CSV FILE INTO CARGO-IMP MESSAG... (1)
-> + BUG: Validation in piple will ... (2)
-> + Is there a 64-Bit Stylus Studi... (2)
-> + BUG: Read structure on SQL Ser... (3)
-> + [Customer Toyoto Motors Europe... (2)
-> - Get a schema for a JSON file (1)
-> + UNOC:4 forces converter to inp... (2)
-> - java class for xs:any elements (1)
-> + changing component separator (3)
-> + Output view disappeared (6)
-> + How to convert deeply nested X... (2)
-> + javax.net.ssl.SSLException (4)
-> + error converting .csv in a uni... (10)
-> + Menu bar disappeared (3)
-> - No Topic (1)
-> - What does "XML" stand for? So... (1)
-> - So XML is just HTML on steroid... (1)
-> + XHTML to XML conversion (2)
-> - Stylus Studio with DDTek xml c... (1)
-> + Installation fails (3)
-> + Is there a keyboard shortcut t... (2)
-> - Bug: Adding a scenario to an X... (1)
-> - Bug: Bug reporting outputs an ... (1)
-> - Tradacoms Invoice 9 Batch Quer... (1)
-> - problem with the product regis... (1)
-> + Help: Documentation... ends in... (2)
-> + How to install LIBxml2 (2)
-> - line numbers in validator outp... (1)
-> + Sharing Viollation in Stylus v... (5)
-> - support for asp.net in stylus... (1)
-> + how to use the latest java xml... (2)
-> - how to show xsd element relate... (1)
-> - Testing Stylus in a secure env... (1)
-> + How do you remove linemarkings... (3)
-> - Bug: Comment / Uncomment via C... (1)
-> + Setting escape (release) chara... (2)
-> + Xalan processor not showing up (2)
-> + Is there a keyboard shortcut t... (3)
-> - Modifying reports outside of S... (1)
-> + Run ALL Scenarios? (2)
-> + predefined macros ${ (4)
-> - TRADACOMS - EDI (1)
-> + SUM not working (3)
-> - Large xml file handling gives ... (1)
-> + 2011 Enterprise code folding f... (9)
-> + custom xml converter (3)
-> - Start Excel feter the mapping ... (1)
-> + Uninstall (2)
-> + xpath to compare two values fr... (2)
-> - xpath to compare two values fr... (1)
-> + SS2011 cannot save XML files u... (3)
-> + SS 2011 Enterprise saying 2010... (2)
-> + How to change the way whitespa... (7)
-> + Updating Relational Data Using... (4)
-> - Contract Stylus Studio help. ... (1)
-> + UTF_8 characters not displayed (6)
-> + Problem XSL to PDF ( dont reco... (2)
-> + HIPAA EDI - Looping question (4)
-> - HIPAA EDI - Looping question (1)
-> + Does XML Report support column... (2)
-> + Limited choice of XSL elements... (2)
-> + Single Source Publishing? (3)
-> - Stylus Stodio License (1)
-> - Stylus Stodio License (1)
-> + relax ng (3)
-> + having problem converting csv ... (8)
-> + error when selecting items fro... (2)
-> + CSV File to XML (3)
-> + Software registration - How to... (4)
-> - Software registration - How to... (1)
-> + .Net Saxon not supported by th... (2)
-> + How do I extend the Evaluation... (2)
-> + dst file (4)
-> + Flat File Custom XML conversio... (4)
-> + converting ascii file to xml f... (2)
-> + Evaluation Copy of Stylus Stud... (8)
-> + Batch process for soap (4)
-> + Strange error when running gen... (5)
-> + Merge Files (2)
-> + Convert cvs to XML (2)
-> + Stylus studio 2010 crashes in ... (5)
-> + excel to text (2)
-> + licence key? (2)
-> + JVM Heap error (4)
-> + How Do I clean TXT File? (2)
-> + SS Web Service Call Tester Pay... (3)
-> - SS Web Service Call Tester Mic... (1)
-- Previous [421-440] [441-460] [461-480] Next
+ Website Feedback (249)
+ XSLT Help and Discussion (7625)
+ XQuery Help and Discussion (2017)
+ Stylus Studio FAQs (159)
+ Stylus Studio Code Samples & Utilities (364)
+ Stylus Studio Announcements (113)
Topic  
Postnext
John van HaandelSubject: Crash while invoking Java Extension function that returns NodeList
Author: John van Haandel
Date: 24 Jun 2005 06:09 AM
Hello,

Can anyone help me with the following problem.
Via an xslt map, I try to invoke a Java extension class. But Stylus Studio crashes while invoking the method of this class. Does anybody know what I'm doning wrong ?

Thanks

John van Haandel


I'm using Stylus Studio 6 XML Professional Edition Release 2
Framework version Build 287m
and JVM : 1.4.2_07-b05 Java HotSpot(TM) Client VM Sun Microsystems Inc.

I've written the following class:
import org.w3c.dom.*;
import javax.imageio.metadata.IIOMetadataNode;

public class TestValueMapping {

public TestValueMapping(){
}

public static Object returnNodeSet(String firstString, String secondString){

IIOMetadataNode retFrag = new IIOMetadataNode("John0001");
DocumentFragment df = null;
IIOMetadataNode myNode = new IIOMetadataNode(firstString);
IIOMetadataNode my2Node = new IIOMetadataNode(secondString);
myNode.setNodeValue(firstString);
retFrag.appendChild(myNode);
my2Node.setNodeValue(secondString);
retFrag.appendChild(my2Node);
Node realNode = (Node) retFrag.cloneNode(true);
return retFrag.getChildNodes();



I invoke the java extension class via the following lines in an XSLT mapping:

<?xml version='1.0' ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:com_philips_pbas_xi_general_DateTimeISO8601="com.philips.pbas.xi.general.DateTimeISO8601" xmlns:com_philips_pbas_xi_general_EscapeString="com.philips.pbas.xi.general.EscapeString" xmlns:com_philips_pbas_xi_general_TestClass="com.philips.pbas.xi.general.TestClass" xmlns:com_philips_pbas_xi_xslt_lookup_TestValueMapping="com.philips.pbas.xi.xslt.lookup.TestValueMapping">
<xsl:template match="/">
<cXML version="1.2.009">
<xsl:attribute name="version">
<xsl:for-each select="com_philips_pbas_xi_xslt_lookup_TestValueMapping:returnNodeSet(string('John3'),string('Johannes3'))">
*<xsl:copy-of select="."/>*
</xsl:for-each>
</xsl:attribute>


Unknownstruzzo(176).log
struzzo.log

Unknownhs_err_pid1396.log
hs_err_pid1396.log

Posttop
Ivan PedruzziSubject: Crash while invoking Java Extension function that returns NodeList
Author: Ivan Pedruzzi
Date: 24 Jun 2005 04:13 PM
John

The Stylus Studio built-in processor doesn't support creation of XML fragments. Even so it should not crash, the problem will be fixed in future update.

Still you can run your extension function using the XalanJ processor (click "..." -> processors -> XalanJ)

There are two additional problems:

1) Your XSLT is trying to insert nodes under an attribute which doesn't make sense. Change your code like this

<cXML version="1.2.009">
<xsl:attribute name="version"/>
<xsl:for-each select="com_philips_pbas_xi_xslt_lookup_TestValueMapping:returnNodeSet(string('John3'),string('Johannes3'))">
<xsl:copy-of select="."/>
</xsl:for-each>
</cXML>


2) the Java extension is trying to call setNodeVale on an Element that does nothing. setNodeVale only works on Text node.
In alternative you can use attributes like that:

public static Object returnNodeSet(String firstString, String secondString) throws ParserConfigurationException
{
IIOMetadataNode retFrag = new IIOMetadataNode("John0001");
IIOMetadataNode myNode = new IIOMetadataNode(firstString);
IIOMetadataNode my2Node = new IIOMetadataNode(secondString);
// Use Attributes instead
retFrag.setAttribute(firstString, firstString);
retFrag.setAttribute(secondString, secondString);
return retFrag;
}

Be carefull because as you can read from IIOMetadataNode javaDoc

http://java.sun.com/j2se/1.4.2/docs/api/javax/imageio/metadata/IIOMetadataNode.html

<<"
This class is not intended to be used for general XML processing. In particular, Element nodes created within the Image I/O API are not compatible with those created by Sun's standard implementation of the org.w3.dom API. In particular, the implementation is tuned for simple uses and may not perform well for intensive processing.
">>


Hope this helps
Ivan Pedruzzi
Stylus Studio Team

   
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.