Я пытаюсь создать функцию вызова java в OSB (версия 11.1.3) для декодирования URL-адреса. Я могу использовать java.net.URLDecoder.decode(data, "UTF-8");
в программе, но функция OSB выдает ошибку ниже (когда тип ввода и возврата - строка)
<Jun 11, 2014 7:43:30 AM UTC> <Error> <OSB Transform> <BEA-382516> <Failed to evaluate expression for callout to java method "public static java.lang.String com.help.sachinProject.ttttt.test(java.lang.String)". Argument index: 1, exception: Value of type 'org.apache.xmlbeans.impl.values.XmlAnyTypeImpl' cannot be type-cast to 'java.lang.String'>
<Jun 11, 2014 7:43:35 AM UTC> <Warning> <Socket> <BEA-000449> <Closing socket as no data read from it on 10.232.24.59:49,359 during the configured idle timeout of 5 secs>
Поэтому я должен как вводить, так и возвращать тип как XmlAnyTypeImpl . Как преобразовать String в XmlAnyTypeImpl (XmlAnyTypeImpl доступен в xmlbeans.jar)?
Вот моя новая программа
import org.apache.xmlbeans.impl.values.XmlAnyTypeImpl;
public class XMLFormatDecode {
XMLFormatDecode(){
super();
}
public static String getValue(XmlAnyTypeImpl data)
{
String decoded = java.net.URLDecoder.decode(data.toString(), "UTF-8");
return decoded;
}
public static void main(String[] args) throws UnsupportedEncodingException {
new XMLFormatDecode();
System.out.println("Result main - "+XMLFormatDecode.getValue(null));
}
}
будет ли XmlAnyTypeImpl.toString() работать?
Может ли кто-нибудь помочь мне преобразовать String в XmlAnyTypeImpl?