You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by H....@MI.unimaas.nl on 2003/12/18 20:04:25 UTC
Best practice for delivering nested data to XSP ? (was: How to co
nvert a hierarchical structure to xml in java?)
Hi,
Maybe rephrasing the problem makes it clearer:
I'm building an XSP page that calls a Java Helper class which gets the data
in a hierarchical form. What I'd like to know is: what's the best way of
delivering the result to the calling XSP page without having to traverse the
hierarchy twice.
Example:
class MyClass {
public WhichDataType getData() {
<....get data from data source ....>
return result;
}
When I would serialize the result data it could look like this:
<TopElement>
<ID>some id</ID>
<element>
<name>nameOfElement</name>
<value>someValue</value>
</element>
<element>
<name>anotherElement</name>
<element>
<name>aSubElement</name>
<value>this Element's value</value>
</element>
<element>
<name>This could also be nested</name>
<value>just a simple value</value>
</element>
</element>
</TopElement>
The "xml" above is not the data I get from the data source, I have to
manipulate it to make it easier to process in Cocoon. If I do that I might
as well use a datatype that I don't have to manually parse again in XSP to
build the above structure using <xsp:element>?
Does anyone have ideas about the best way to handle this?
I've thought about putting everything in a long String, but I don't know how
to parse the String in XSP to the corresponding XML.
Bye, Helma
> -----Original Message-----
> From: H.vanderLinden@MI.unimaas.nl
> [mailto:H.vanderLinden@MI.unimaas.nl]
> Sent: Thursday, 18 December 2003 16:43
> To: users@cocoon.apache.org
> Subject: How to convert a hierarchical structure to xml in java?
>
>
> Hi,
>
> I'm in the middle of building an XSP page that can retrieve
> information from
> my CORBA-based server. I'm now writing a helper class in Java
> that can take
> the output of the server and transform it into something I
> can easily manage
> in the XSP page.
> However, I'm stuck. The results are in a hierarchical
> structure based on
> Vector and String or String[]. I want to manipulate this
> before returning it
> to the XSP page, but I don't want to traverse the structure for the
> manipulation and then once more in the XSP page to build the XML.
>
> Can anyone help?
>
> Bye, Helma
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
> For additional commands, e-mail: users-help@cocoon.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org
Re: Best practice for delivering nested data to XSP ? (was: How to
co nvert a hierarchical structure to xml in java?)
Posted by go...@osmosis.gr.
it's not the same but i have the need to create nestet xml elements with
data from a data table
the solution was to create a recursive function into my xsp
hope that this can help you to figure a solution
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsp:page language="java" xmlns:xsp="http://apache.org/xsp"
xmlns:esql="http://apache.org/cocoon/SQL/v2"
xmlns:xsp-request="http://apache.org/xsp/request/2.0">
<xsp:logic>
void getChilds(String parent_id, AttributesImpl xspAttr){
try{
<esql:connection>
<esql:pool>hotpoints</esql:pool>
<esql:execute-query>
<esql:query>select * from tblElements WHERE element_Parent=<xsp:expr>parent_id</xsp:expr></esql:query>
<esql:results>
<esql:row-results>
<element>
<xsp:logic>
parent_id = <esql:get-string column="id_Elements"/>;
</xsp:logic>
<esql:get-columns/>
<xsp:logic>
getChilds(parent_id, xspAttr);
</xsp:logic>
</element>
</esql:row-results>
</esql:results>
<esql:no-results>
<the_end>done</the_end>
</esql:no-results>
</esql:execute-query>
</esql:connection>
}
catch (Exception e)
{
}
}
</xsp:logic>
<tree>
<elements>
<xsp:logic>
String root_element =<xsp-request:get-parameter name="root_element"/>;
getChilds(root_element,xspAttr);
</xsp:logic>
</elements>
</tree>
</xsp:page>
--stavros
On Thu, 18 Dec 2003 H.vanderLinden@MI.unimaas.nl wrote:
> Hi,
>
> Maybe rephrasing the problem makes it clearer:
>
> I'm building an XSP page that calls a Java Helper class which gets the data
> in a hierarchical form. What I'd like to know is: what's the best way of
> delivering the result to the calling XSP page without having to traverse the
> hierarchy twice.
>
> Example:
>
> class MyClass {
> public WhichDataType getData() {
> <....get data from data source ....>
> return result;
> }
>
> When I would serialize the result data it could look like this:
> <TopElement>
> <ID>some id</ID>
> <element>
> <name>nameOfElement</name>
> <value>someValue</value>
> </element>
> <element>
> <name>anotherElement</name>
> <element>
> <name>aSubElement</name>
> <value>this Element's value</value>
> </element>
> <element>
> <name>This could also be nested</name>
> <value>just a simple value</value>
> </element>
> </element>
> </TopElement>
>
> The "xml" above is not the data I get from the data source, I have to
> manipulate it to make it easier to process in Cocoon. If I do that I might
> as well use a datatype that I don't have to manually parse again in XSP to
> build the above structure using <xsp:element>?
>
> Does anyone have ideas about the best way to handle this?
>
> I've thought about putting everything in a long String, but I don't know how
> to parse the String in XSP to the corresponding XML.
>
> Bye, Helma
>
> > -----Original Message-----
> > From: H.vanderLinden@MI.unimaas.nl
> > [mailto:H.vanderLinden@MI.unimaas.nl]
> > Sent: Thursday, 18 December 2003 16:43
> > To: users@cocoon.apache.org
> > Subject: How to convert a hierarchical structure to xml in java?
> >
> >
> > Hi,
> >
> > I'm in the middle of building an XSP page that can retrieve
> > information from
> > my CORBA-based server. I'm now writing a helper class in Java
> > that can take
> > the output of the server and transform it into something I
> > can easily manage
> > in the XSP page.
> > However, I'm stuck. The results are in a hierarchical
> > structure based on
> > Vector and String or String[]. I want to manipulate this
> > before returning it
> > to the XSP page, but I don't want to traverse the structure for the
> > manipulation and then once more in the XSP page to build the XML.
> >
> > Can anyone help?
> >
> > Bye, Helma
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
> > For additional commands, e-mail: users-help@cocoon.apache.org
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
> For additional commands, e-mail: users-help@cocoon.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org