Translate

2013年3月9日土曜日

Google Web Toolkitクライアント側でBase64変換する

GWTクライアント側のみでBase64変換する場合も
簡単にはいかない。


Base64変換は
外部jarを投入できるJavaSE環境なら
apache-commonsを使うのが良くやる方法、

import org.apache.commons.codec.binary.Base64
..
// apache-commonsでbyte[]をBase64変換し文字列化
return new String(Base64.encodeBase64(hash));

GWTサーバ側(GAE上)なら
com.google.gwt.user.server.Base64Utilsというクラス
を使うことが出来る。

import com.google.gwt.user.server.Base64Utils;
..
// GWTサーバでbyte[]をBase64変換し文字列化
return Base64Utils.toBase64(hash);

しかしGWTクライアントではそれらが使えない。
なので
これまた以下のオープンソースのJavaソースbase64.javaを
使用した。

http://svn.apache.org/repos/asf/directory/sandbox/erodriguez/preferences/src/main/java/org/apache/preferences/service/Base64.java

ほかにもいろいろ実装はあるが、
このコードを選んだのはGWTクライアント側で使用できる
クラスのみを使っての実装になっていたためだ。

return Base64.byteArrayToBase64(hash);


でとりあえず対応できるようになった。

0 件のコメント:

既存アプリケーションをK8s上でコンテナ化して動かす場合の設計注意事項メモ

既存アプリをK8sなどのコンテナにして動かすには、どこを注意すればいいか..ちょっと調べたときの注意事項をメモにした。   1. The Twelve Factors (日本語訳からの転記) コードベース   バージョン管理されている1つのコードベースと複数のデプロイ 依存関係 ...