小编nic*_*all的帖子

java解码base64字符串

我意识到这可能更像是一个普通的java问题,但是因为它在Notes\Domino环境中运行,所以我想先检查一下这个社区.

摘要:

我似乎无法解码字符串:dABlAHMAdAA =使用lotus.domino.axis.encoding.Base64或sun.misc.BASE64Decoder

我知道原文是:测试

我在http://www5.rptea.com/base64/上通过解码确认它似乎是UTF-16.

作为简单测试,使用以下任一方法:

String s_base64 = "dABlAHMAdAA=";
byte[] byte_base64 = null;
String s_decoded = "";

byte_base64 = new sun.misc.BASE64Decoder().decodeBuffer(s_base64);
s_decoded = new String(byte_base64, "UTF-16");
System.out.println("Test1: " + s_decoded);

byte_base64 = lotus.domino.axis.encoding.Base64.decode(s_base64);
s_decoded = new String(byte_base64, "UTF-16");
System.out.println("Test2: " + s_decoded);

System.out.println("========= FINISH.");
Run Code Online (Sandbox Code Playgroud)

我得到输出:
Test1:????
测试2:????

如果我创建字符串为UTF-8

s_decoded = new String(byte_base64, "UTF-8");
Run Code Online (Sandbox Code Playgroud)

它输出:
t
没有抛出错误,但它没有完成代码,没有达到"完成".

详情

我正在访问asmx Web服务,在SOAP响应中,一些节点包含base64编码数据.在这个时间点,没有办法让服务改变,所以我不得不自己XPath和解码.编码数据是文本或html.如果我通过http://www5.rptea.com/base64/传递编码数据并选择UTF-16,它会正确解码,所以我必须做错事.

作为旁注,我编码"测试":

s_base64 = lotus.domino.axis.encoding.Base64.encode(s_text.getBytes());
System.out.println("test1 encodes to: " + s_base64);

s_base64 = new sun.misc.BASE64Encoder().encode(s_text.getBytes());
System.out.println("test2 …
Run Code Online (Sandbox Code Playgroud)

java utf-16 lotus-domino xpages

4
推荐指数
1
解决办法
4296
查看次数

30秒定期任务,用于轮询外部Web服务和缓存数据

我正在从Domino服务器端操作每30秒轮询一次外部Web服务.

一点点背景......

我们通过TomTom api跟踪汽车的位置.我们现在需要在我们的网络应用程序中显示这一点,覆盖到地图(谷歌,bing等),并与我们的应用程序中的其他lat长数据混在一起.可以把它想象成调度出租车,我们想把这些调用分配给出租车(......这不是出租车\调用,但它是类似的过程).我们非常积极地刷新调度控制器屏幕,因此他们可以看到所有对象的状态并分配给最近的汽车.如果我们从刷新用户屏幕触发数据,我们进入一些棘手的控制服务器端,否则我们将达到每分钟最大允许请求到TomTom api.

最初我打算安排一个代理来轮询Web服务,写入我们应用程序中的缓存对象,刷新调度控制器屏幕从我们的缓存中提取数据....很棒,除了用户要求是我们的缓存必须是每30秒更新一次.我可以创建一个每1分钟运行一次的程序文档,但仍然不够激进.

所以我们现在离开了:我们的.net人将创建一个服务,每30秒轮询一次TomTom,我们从他的服务中检索,或者我想办法在Domino中做.在Domino数据库中做的很好,而不是一些独立的Java应用程序或.net,以便在一个系统(Domino)中保留尽可能多的逻辑.

我们在系统中大量使用支持bean.我将在今天晚些时候对此进行测试,我希望,但这似乎是一条明智的路线......?: 使用计时器在JSF托管bean中为计划任务生成线程 ......或者是他们的局限性我不知道,有没有人在Domino之前解决这个问题或有任何意见?

提前致谢,

缺口

javabeans lotus-domino xpages

2
推荐指数
1
解决办法
1219
查看次数

标签 统计

lotus-domino ×2

xpages ×2

java ×1

javabeans ×1

utf-16 ×1