OSB Java调用核心java类

时间:2014-09-18 08:39:42

标签: osb oracle-service-bus

我有一个简单的java调用来解码base64字符串。 java看起来像这样

import javax.xml.bind.DatatypeConverter;

public final class DecodeBase64 {
    public static byte[] decode(String base64string) {
        return DatatypeConverter.parseBase64Binary(base64string);
    }
}

然后我在想,因为DatatypeConverter.parseBase64Binary是静态的,为什么不直接调用它。这样我可以避免必须部署我的jar。

但我似乎无法找到从OSB java callout调用核心java类的方法。

这可能吗?它甚至可行吗?

3 个答案:

答案 0 :(得分:0)

我不相信有可能实现这一点,正如您在Java Callouts上的文档中所看到的,您首先需要指定用于制作标注的.jar。在OSB的类路径中可能有大量现有的库等,Oracle等人不想盲目地暴露它们,但我认为你应该能够在.jar中导入和使用它。容易。

Section 21.20 - Adding Java Callouts - http://docs.oracle.com/cd/E14571_01/doc.1111/e15867/proxy_actions.htm#i1321171

答案 1 :(得分:0)

如果您希望在调用外部系统或验证输入授权标头时进行Base64转换以设置基本授权,那么OSB具有一个称为“服务帐户”的内置功能,当与业务服务/代理服务结合使用时可以转换您的用户名/密码为Base64格式。

如果您希望将数据转换为Base64格式出于其他原因,那么我担心,如果不进行java标注,则无法在OSB中执行此操作。

答案 2 :(得分:0)

这是不可能的。您必须导入罐子