バーコードを生成するJavaサーブレット (Barcode4J)

Webアプリでバーコードの生成する場合の実装面倒だな…と思ってライブラリを調べていたら、サーブレットが付属しているらしいので遊んでみた。

バーコード生成ライブラリ

Javaのバーコード生成ライブラリにBarcode4Jというのがあるらしい。ライセンスはApache License。
Barcode4J(公式)
Barcode4J Maven Repository

EclipseでMaven経由で入れたけど、単体では動作せず。
Avalon Frameworkもインストールしないと動かなかった。
Avalon Framework Maven Repository

Barcode4Jのバージョン2.1とAvalon Frameworkの4.3を入れたら使えた。

バーコードを生成するJavaサーブレットについて

BarcodeServletというサーブレットが既に実装されているので、基本的な機能だけなら作る必要はない。
標準実装のサーブレットについてはここに書かれている。

ただし注釈にあるように、全てのパラメータをサポートしているわけではないので注意。
必要なら、extendsして追加実装すれば良いと思う。

QRコードはリリース版(バージョン2.1)ではサポートされていないが、Barcode4JのCVS最新版とZXingを入れれば動くらしい。

バーコード生成リクエストパラメータの指定例

最低限のパラメータとして、typeでバーコードの種類を、msgでバーコードに入れる情報を指定する。
typeパラメータはDefaultBarcodeClassResolverのコンストラクタを見ると分かる。

EAN(JAN)だとこんな感じ。
フォーマットは指定しないとSVGがデフォルトになる。

http://localhost:8080/BarcodeTest/BarcodeServlet?type=ean-13&msg=0123456789012

EAN(JAN)でCheckSumを含めて13桁指定も可。
ただし、CheckSum部分が間違っているとエラーになる。

http://localhost:8080/BarcodeTest/BarcodeServlet?type=ean-13&msg=01234567890123

codabar(NW-7)の場合はこんな感じ。フォーマットはPNGにしてみた。

http://localhost:8080/BarcodeTest/BarcodeServlet?type=codabar&msg=0123456789012&fmt=png

関連記事


  1. Javaサーブレットにおける部分URLやファイルパスの取得
  2. Windowsのコマンドラインから7-Zipでtar.gz形式に圧縮する
  3. exampleSiteのローカルサーバ起動やビルドを1行で実行する
  4. Macのzsh上でFn-Deleteが動作しない問題
  5. MavenでOSSのライセンス一覧を出力する
  6. Hugoはじめました
  7. Wiresharkでスマートフォンアプリの通信パケット解析

tosi avatar
tosi
Web Application Engineer, Java / Spring / Azure / GCP
comments powered by Disqus