# xslt Attributwerte von bestimmten Elementen



## Gast2 (18. Jan 2012)

Hallo!

Ich habe ein xslt-Template geschrieben (siehe unten).
Für die fett-markierte (mit "*" gekennzeichnete) Zeile bekomme ich aber stets die Fehlermeldung:



Error at xsl:value-of on line 103 
  Cannot convert from xs:string to dom10.server.types.Location
  at xsl:call-template name="connection_Fill_In" (#43)

Zum Vergrößern anklicken....

Ich verstehe die Fehlermeldung so: 
Der String aus der xsl kann nicht als Objekt TpoReferable  mit setStation nach / in Location geschrieben werden. Richtig?



		Code:In die Zwischenablage kopieren


<xsl:template name="connection_Fill_In">
	<xsl:param name="locationNode" />
	<xsl:variable name=" connectionNode" select=" Connection:new() " />
	<xsl:variable name=" originDestinationNode" select=" OriginDestination:new() " />
	<xsl:value-of select=" List:add( GetConnectionsAnswer:getConnection( $getConnectionAnswerNode ), $connectionNode ) " />
	<xsl:value-of select=" List:add( Connection:getOrigin( $connectionNode ), $originDestinationNode ) " />
	<xsl:value-of select=" List:add( OriginDestination:getLocation( $originDestinationNode ), $locationNode ) " />

	<xsl:variable name="tpoReferableNode" select=" TpoReferable:new() " />
	<xsl:value-of select=" TpoReferable:setTpoIdent($tpoReferableNode, @stopID) " />
	[B]<xsl:value-of select=" Location:setStation($locationNode, $tpoReferableNode) " />[/B]

</xsl:template>


Die Funktion in Location.java sieht so aus:


		Java:In die Zwischenablage kopieren


public void setStation(TpoReferable value) {
        this.station = value;
    }


Nun, was ist falsch? oder...
Wo fehlt etwas?

Würde mich freuen über'n Tipp! 
Frank*


----------



## SlaterB (18. Jan 2012)

meiner Interpretation nach geht es um $locationNode, dieses ist ein String und kein Location-Objekt, wie benötigt

was an das Template übergeben wurde ist nicht zu erkennen, 
die Liste.add()-Methode vorher geht wohl mit  $locationNode, weil da Object als Parameter verwendet wird


----------



## Gast2 (18. Jan 2012)

SlaterB hat gesagt.:


> meiner Interpretation nach geht es um $locationNode, dieses ist ein String und kein Location-Objekt, wie benötigt




Joh!
Ich habe folgende Zeile hinzugefügt:

```
<xsl:variable name="locationNode" select=" Location:new() " />
```
Jetzt gehts!
mit Dank vom Frank!


----------

