Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Here is a quick reference for how input and output types map from xaction xml files to an Action bean:

xaction input

Java type

expected Action bean method (Java)

<myInput type="string">

java.lang.String

setMyInput(String s) { ...

<myInput type="long">

java.lang.Long

setMyInput(Long n) { ...

<myInputMap type="property-map">

java.util.Map<java.lang.String, java.lang.String>

setMyInputMap(Map<String, String> m) { ...

<myInputListMap type="property-map-list">

java.util.List<java.util.Map<java.lang.String, java.lang.String>>

setMyInputListMap(List<Map<String, String>> lm) { ...

<myInputList type="string-list">

java.util.List<java.lang.String>

setMyInputList(List<String> l) { ...

<myInput> (no type specified)

in In this case, the Action framework does not know the type and will try to convert the data to the type specified in your Action's setter method.  If the conversion fails, you will see a warning to this effect.

setMyInput(Object o),
or
 setMyInput(SomeOtherType t) //of course this will only work if the data can be cast to a SomeOtherType type

 

 

 

xaction output

Java type

example expected Action bean method (Java)

<myOutput type="content"/>

java.io.OutputStream

setMyOutputStream(OutputStream o) { ...

 

 


Note the content type output is treated like an input since the presence of a content type implies that your Action bean intends to write to a pre-existing data stream. This pre-existing stream is retrieved by the Action framework code and passed to your Action bean as a java.io.OuputStream prior to your Action bean executing.

xaction resource

Java type

expected Action bean method (Java)

<myResource type="resource"/>

java.io.InputStream

setMyResource(InputStream o) { ...

 

 


Resources

Outputs

Action Error Handling

...