### Java Callout Action Properties

In a message flow, use a Java callout action to invoke a Java method or an EJB business service from within the message flow.

In the Message Flow Editor, click a Java callout action to display its properties in the Properties view. Use these properties pages to configure the selected Java callout action. The pages are:

- Java Callout
- Comment
- Namespaces
- Variables

The Java Callout page has the following options:

Option | Description
--- | ---
Method | An external Java method to be called from the message flow. Click Browse to select a class and a static method from an archived resource. Once you have selected the class and method, a table appears on the Java Callout Properties page: The Name column lists all the method's arguments. The Action column provides an <Expression> or `expression_fragment` link to the XQuery/XSLT Expression Editor, where you can create an expression to retrieve a value for the argument. Data types for the arguments must be one of the following: `Java.lang.String` Primitive types, and their corresponding class types (e.g., `int` vs. `java.lang.Integer`) `java.lang.BigDecimal`, and `java.lang.BigInteger` (these types are used in financial calculations where round-off errors or overflows are not tolerable) only `org.apache.xbeans.XmlObject` and no typed xml beans. `byte[]` `java.lang.String[]` (INPUT ONLY) `XmlObject [ ]` (INPUT ONLY) If the type of the input value you enter does not match the declared input argument type, ALSB tries to automatically typecast input values to the declared type of the input argument. For example a string value of `"123"` will be converted to integer `123` if the declared type of the input argument is java primitive `int`.
Result Type | The variable to which the result is assigned. The label for the field indicates the data type of the result. If the result is a byte array (the only possible array returned), the binary-content XML element is returned.
Service Account | An optional Service Account, which can be specified if there is a security context for this Java method. Click Browse to select a service account. In the case of fixed and mapped service accounts, the userid/password from the service account is authenticated in the local system and the security context propagated to the Java callout. In the case of `passthru`, the security context is propagated to the Java callout. This context is the message level context if defined (with WS-Security). Otherwise, it is the transport level context.

Use the Comment page to add a comment, if desired:

Use the Namespaces page to see a list of defined namespaces or to create a new one.

Use the Variables page to see a list of defined context variables or to create a new one. For more information about context variables, see Message Context in the AquaLogic Service Bus User Guide.