【问题标题】:OSB Java callout to core java classOSB Java 标注到核心 Java 类
【发布时间】:2014-09-18 08:39:42
【问题描述】:

我有一个简单的 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 标注中调用核心 java 类的方法。

这可能吗?是否可行?

【问题讨论】:

    标签: osb oracle-service-bus


    【解决方案1】:

    我认为不可能做到这一点,正如您从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

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        【解决方案3】:

        这是不可能的。你必须导入jar

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-08-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-12-07
          • 2015-09-13
          • 2011-11-23
          相关资源
          最近更新 更多