0

我有一个简单的 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 类的方法。

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

4

3 回答 3

0

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

第 21.20 节 - 添加 Java 标注- http://docs.oracle.com/cd/E14571_01/doc.1111/e15867/proxy_actions.htm#i1321171

于 2014-09-22T15:02:52.247 回答
0

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

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

于 2014-09-27T19:52:56.593 回答
0

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

于 2018-07-09T07:35:47.120 回答