読者です 読者をやめる 読者になる 読者になる

タイガー!タイガー!じれったいぞー!(SE編)

AS400,WAS,GlassFish,Java,JavaEE,JSF等の開発における日々の気づきをまとめたブログ(備忘録)。

【AS400】RPGLE-MOVEA命令をfreeでどう書くか

最近、RPGLEはほぼFree形式で書くようにしています。 しかしながら、MOVEA命令のfree置き換えが無いっぽいので、困っておりました。 MOVEA命令は、標識の一括セット/クリアなどで便利だったのですが・・・。 サンプル1 標識30~59までを一括でOFFに設定する…

Payara Serverアップグレードを試す

Java EE Advent Calendar 2016の16日目です。 昨日の記事は @khasunumaさんの「JavaFX から Payara Micro API を呼び出す際の注意点」でした。 明日は@backpaper0@githubさんです。 今回のゴール 目的 作業手順 (1) JDKアップグレード ①JDKダウンロード ②JDK…

「JJUG CCC 2016 Fall」に行ってきました #jjug_ccc

日付を跨いでしまいましたが(長州力に「跨ぐなよ!、おいコラ!」と恫喝してもらいたい)、昨日、新宿で行われたJJUGに行ってきました。 2015年春、2016年春に続いて3回目。急で強引な参加になってしまいましたが、Javaエンジニア力アップのためにも、チー…

【AS400】レコードロック検証

改めて、DB2 for iでのレコードロックを検証していきたいと思います。 (1) レコードロックとは? (2) RPGプログラムでレコードロックを発生させてみる 検証1用ソースPGM RPGLESRC/SAMPLE39 検証1 実行結果 レコードロックの確認方法 ロックウェイト時のWRKAC…

【AS400】SQLRPGLE-挿入、更新、削除件数を取得する

久しぶりにAS400のSQLRPGLEネタです。 SQLのINSERT文、UPDATE文、DELETE文実行後に、どうやって結果レコード数を取得するのか? という疑問が湧きました。 Javaであれば、下記のようにSQL実行結果の戻り値で結果レコード件数を取得できるのですが・・・。 in…

【JSF2.2】セッションごとに保持できるView画面件数が25画面までに制限されている

1年半ほど前にブログで、ViewExpiredExceptionに苦しんだ記録をまとめましたが、再度、似たようなトラブルに直面してしまいました。 タイトルがその原因だったわけですが、この問題についてもまとめておこうと思います。 STATE_SAVING_METHODについて JavaE…

【EXCEL】 データの出現数を集計する

完全に個人用の備忘録です。 Excelでとあるデータの出現数をカウントして表にまとめたいシーンを想定し、作業手順に落としました。 ピボットテーブルを使って集計できました。 作業手順 サンプルデータを準備しました。A2からA51まで(計50件)のデータとな…

Docker for Windows(Ver1.12)を試してみました

今年初め、10年ぶりに資格取得に挑戦しようと、LPIC1へ挑戦しました。 何とか合格することができ、「よっしゃー!」と当時は気持ちが高ぶったのですが、半年近くも経つと、あの時の気持ちの高ぶりはすっかり冷めてしまっておりました。 これではいかん!! …

【AS400】RPGLE-数値→文字列変換

RPGLEでのキャスト処理(数値→文字列)についてです。 数値を文字列化して出力したいケースは、多くあると思います。 自分がわかる範囲で、そのバリエーションをまとめてみました。 (1) %CHAR関数を使う %CHARを使うことで、数値を簡単に文字列変換してくれ…

【Docker】Bridge IPアドレスの変更でハマる

DockerネットワークのホストOS側のIPアドレスは、デフォルトでは「172.17.42.1/16」のIPアドレス(bridge IPアドレス)が割り当てられます。 (※追記: Docker1.11.2で試したところ、172.17.42.1ではなく、172.17.0.1/16のIPアドレスとなりましたでした。) …

【Docker】DokuWikiバックアップコンテンツを復元できなくなる(tar: can't open '/backup/dw-backup.tgz': Permission denied)

Dockerをオンプレミスで利用するようになって、しばらく経ちますが、自分でDockerfileを書いて「infrastructure as a code」も実現できますし、「Docker Hub」から必要なものを取り込むことも容易にできて、もう、便利過ぎてDocker無しでは考えられません! …

はじめてのMybatis(with AS400)

概要 実行環境 はまったこと (1) ライブラリーリストが機能しない (2) resultMapのcolumn値でピリオド付きフィールドが使えない (3) 最初のN行のみの選択したい場合にN値をパラメータで渡せない (4) CHARフィールドのトリムがされない 概要 O/Rマッパーで…

【Thunderbird】 POP3受信済みメールが再受信されてしまう

メールクライアントで「Mozilla Thunderbird」は、非常に便利で大変重宝させてもらってます! ただ先日、POP3の受信済みメールが再受信されてしまう現状が発生したので、その仕組みを学んでおきたいと思います。 受信済みメールを管理するファイル ググって…

asciiflow:Webサービスで簡易ネットワーク図を描きたい

ネットワーク図をガッチリ描く場合、MS製Visioあたりを使うのでしょうが、簡単な構成や図を描きたい!という場合に、専用のアプリケーションを立ち上げるというのが少々手間だったりもします。 そこで、調べていたら、asciiflow というWebサービスを発見しま…

ポート指定によるPing試験

先日、職場の同僚から教えてもらったツールについて、記録しておきたいと思います。 こういう時に、情報共有の大切さを痛感しますね。ナレッジってやつですか・・・(今更ですが) ツールの名称は「PsPing」。 プロセスへのpingという意味なのでしょう。 tec…

「JJUG CCC 2016 Spring」に行ってきました

昨年同様、「JJUG CCC 2016 Spring(5月21日開催)日本Javaユーザーグループ」に行ってきました。 去年は、後輩と2人でお上りさんぶりを発揮してしまい、会場まで行くのを時間ロスしてしまい、時間通りに辿りつけませんでしたが、今年は余裕の20分前着席! …

Windows Update適用後にExcel、Acrobat、IEが起動しなくなる現象発生!

先週の話なのですが、2016年4月更新分のWindows UpdateをWindows7 PCに適用した後に、ExcelなどのMS Office等が起動できなくなる現象が発生しました。 まだまだあやふやな状態ですが、原因と対処方法がわかったので、まとめておこうと思います。 症状発生パ…

【NetBeans】デプロイ先の変更方法

先日、APをglassfishからpayaraへ変更したのですが、WindowsPCのIDEからのデプロイ処理だけが、旧glassfishのパスで実行されてしまう問題が発生しました。その解決方法をまとめておこうと思います。 トラブル内容 元々のglassfishのパスは、「C:\glassfish4_1…

【NetBeans】Glassfish4.1.1との連携

久しぶりに、Javaの開発に戻ってきたのですが、2015年10月には、Glassfish4.1.1が出ているし、サードパーティーのPrimeFacesも5.3が出ているじゃないですか!!! というわけで、開発機で、Glassfish4.1.1を配備して、NetBeans8.0.2で連携しようとしてみると…

【Docker1.7】Nginxコンテナ生成+起動テスト

前回のブログで構築したVagrant(CentOS7.1)をホストOSにして、Nginxコンテナを生成・起動してみたいと思います。 tigertaizo.hatenablog.com vagrantユーザをdockerグループに所属させる Docker HubからNginx(Offical) Dockerイメージを取得 Case1: nginx基…

【Docker1.7】CentOS7(vagrant)へインストール

概要 セットアップ手順 1. Vangrant構築 仮想マシンのIPアドレス設定 起動 2. Server接続(192.168.33.10) 3. タイムゾーン設定・確認 4. 日本語化 5. Sudo設定 6.各種パッケージのアップデート/vimのインストール 7.SELinuxのdisabled 8. ファイアウォ…

【AS400】デフォルト・ゲートウェイの変更

AS400セットアップ後、なかなか変更にならなそうなデフォルトゲートウェイの変更方法を記しておきます。 IBM iのVersionは、V7R1になります。 変更方法 例として、現在、「172.16.1.1」のデフォゲを、「172.16.1.254」へ変更する操作になります。 (1) 現状のルー…

ネットワーク・スループット調査

久しぶりの投稿になってしまいました。。。 最近は、ほとんどプログラミングが出来ておらず、インフラ系の仕事がメインになっております。 その中で、新たに学んだことを、備忘録として記しておきたいと思っております。 今回は、iperfを使って、ネットワー…

【Zabbix2.4】CentOS7(vagrant)へインストール

ネットワーク上にあるServerやネットワーク機器の死活監視などを行うため、Zabbixという統合監視ソフトウェアが人気のようです。 Zabbixでは、次の監視が可能になるとのことです。 稼動監視 リソース監視 アプリケーション監視 私もセットアップしたいと思い…

【AS400】RPGLE-数値日付の妥当性チェック

タイトルの件、やはり便利な命令が用意されていました。 これまでは、DSで年、月、日に分けて、閏年判定を交えて、オリジナル関数で処理させていましたが、TEST命令を使えば簡単に判定できることがわかりました。 サンプルはこちらです。 サンプルPGM D MAIN…

【Excel】表Aのキーが表Bのキーに存在する場合、表Aの隣に表Bのレコードを出力する方法

タイトルにて、何を言いたいのか、うまく伝わらないような気がしてなりませんが、 ようするに、2つの表をキーでつないで、EXCEL上で並べてみたい! ただそれだけです。 ACCESSやらVBAなどを使わないで手軽にやる方法を調べました。 昔からあるVLOOKUP関数で…

【Nexus】インハウス・リポジトリからのJarファイル取得

次に、Nexus上にアップロードしたファイルを取り込む方法です。 gradleプロジェクトで試してみました。 まずは、Repositoriesに自前Nexusの設定を追加しておきます。 repositories { mavenCentral() maven { url "http://192.168.1.10:8081/nexus/content/re…

【Nexus】アーカイブ・ファイルのアップロード

前回、CentOS7のServerにNexus(OSS版)を無事にインストールできましたので、今回は、実際にJarファイルのアップロードと別プロジェクトから取得する方法を試したいと思います。 まずは、アップロードから。 とりあえず、セキュリティ的な設定は、何もして…

【CentOS7】Nexusインストール

チームで共有して使用したいJarファイルを気軽に更新したり、取得したりできないものかと調査してましたら、「インハウス・リポジトリ」というワードにたどりつきました。 インハウス・リポジトリとは? いわゆる社内リポジトリと呼ばれるもので、自分たちで…

【シェルスクリプト】Javaクラスの実行結果を取得する方法

Linuxのシェルスプリプトでは、Javaの実行結果(System.exit)の値を取得できることが今回、わかりました。 以前に作成した「Test.jarファイル」を使用して、クラスの実行結果を取得するシェルスプリプトを書いてみました。 【Eclipse】JARファイルのエクス…

【Eclipse】JARファイルのエクスポート/実行確認(Gradleプロジェクト編)

またまたJARファイルの実験ということで。 これまでの実験結果はこちら。 【Eclipse】JARファイルのエクスポート/実行確認(Javaプロジェクト編) 【Eclipse】実行可能なJARファイルのエクスポート/実行確認(Javaプロジェクト編) 今度は、Elipseで、Grad…

【Eclipse】実行可能なJARファイルのエクスポート/実行確認(Javaプロジェクト編)

前回の続きです。 前回の実験では、外部クラスへの参照があるクラスを実行した場合に、NoClassDefFoundErrorになってしまったわけですが、外部クラスを使わずにコーディングするのは無謀でしょう。「車輪の再発明」したくないですし。。。 というわけで、今…

【Eclipse】JARファイルのエクスポート/実行確認(Javaプロジェクト編)

JavaEEの開発に携わって、だいぶ時間が経ちましたが、Javaそのものの原理・原則を正しく理解できていない今日この頃です。 というわけで、Eclipseを使って(この時点でアウトでしょうか。コマンドでやりなさい!というのは無しでお願いします)、簡単なサン…

WebStorm購入!

5/19に、身銭を切らないとhtml5が上達しないと思い、個人購入しました。WebStormを!!! 見たことのあるデザインだと思ったら、「IntellIDEA」を出している会社さんの製品だったのですね! さっそく、背景をダークにして、Yeomanで生成したAngular Applicat…

【AS400】オペレーション・コンソールによる接続

久しぶりにAS400に関する投稿です。 オンプレミス系サーバーで最重要なものといえば、コンソールですよね。 AS400のコンソールについて、はるか昔は同軸ケーブルで接続のダム端で行っていましたが、今やPCベースで操作が可能です。 そういえば、最初からコン…

【Glassfish4】JavaMail Sessions設定(TLS認証)

外部メール・アカウントを使って、GlassfishのJavaMail Sessionsを設定する機会があったので、アップしておきます。 Versionは、Glassfish4.1(build 13)です。 設定方法 Glassfish管理コンソールへアクセスします。 ログイン後、「JavaMail Sessions」を選択…

【YEOMAN】開発環境構築(Windows8)

現在、開発の主体は、AS400とJavaの2系統で行っていますが、よりモダンな開発スタイルも、今のうちにシコシコと習得しておく必要がありそうです。 動向をチェックしていると、Java Scriptフレームワーク戦争が起きているのは一目瞭然で、昔はあれほど非難さ…

【Selenium】実行環境構築(Windows7)

いよいよ、手動でのUIテストも限界に達してきましたので、Seleniumの本運用を開始しました。 その環境を構築した際のメモを残しておきます。 Selenium Serverなどもあるようなのですが、実際のユーザーが使用するPCと同等レベルのものにGlassfish4とJenkin…

【HTML5】videoタグが超便利!

HTML5のvideoをタグをはじめて使ってみました! 参考になったサイトはこちら。丁寧にまとめてくださっていて、大変助かりました。 再生速度とループの設定-JavaScript入門(HTML5編) 個人的に感動した機能は、2つありました。 (1) 動画の再生時間範囲指定…

【AS400】RPGLE-文字列に半角¥が含んでいるかの判定処理

表題の処理をどうしてもやりたくて、BIF関数等をいろいろと試したのですが、うまくいかず。。。 さすがは、アメリカ産まれのAS400! そうは問屋は卸してくれませんね。 具体的には、%SCANを使って、半角¥の文字位置を取得しようとしたのですが、全角¥でも…

【AS400】RPGLE-一括レコード更新処理サンプル(UNLOCK命令を使用)

AS400でレコード更新を処理する場合、専用アプリ、SQL、DFUなど多くの方法がございますが、複雑な条件をつけて、1つ1つ判定したうえで、更新したい!という場合では、RPGでやるのが便利だと思っています。 そこでサンプルを。 サンプルは、単純に売上明細…

「Java Day Tokyo 2015」と「JJUG CCC 2015 Spring」に行ってきました

「Java Day Tokyo 2015」と「JJUG CCC 2015 Spring(4月11日開催) | 日本Javaユーザーグループ」に行ってきました。 正直、どちらか1つしか行けないかと思っていましたが・・・。感謝、感謝ですね!! 東京でのJavaのセッションを聞くのが、今回が初めて。…

【AS400】RPGLEからCLコマンドを実行(ex.DLYJOB)

RPGプログラムからDLYコマンドを実行させたいケースがありましたので、まとめます。 下記のサイトを参考にさせていただきました。 Capturing QCMDEXC error codes | RPGPGM.COM - From AS400 to IBM i RPGプログラムからDLYJOBを実行するサンプル 単純にプロ…

【AS400】RPGLE-ポインターによるパラメータ渡し

RPGでもポインターを利用できるようです。 あまり詳しくないのですが、構造体をパラメータにして別プログラムへ渡すためにポインターを使ってみました。 呼出し元(MAIN)のプロシージャでの処理 DATA1という名称の構造体を準備しました。構造体では、ID,NAM…

【JSF2】Resources(js,cssなど)のキャッシュ制御

JSF2開発において、共通部JavaScriptやCSSのキャッシュが残っていることで変更した内容がすぐに反映せず、悪戦苦闘してしまいました。 HTTP、ブラウザの特徴、キャッシュ、クッキーなどなど。 ひとつひとつ理解していく必要がありそうです。 まずは、Firefox…

【AS400】DSPF-ユーザー定義編集コード

EDTCDEについて AS400の画面ファイルにて、EDTCDE(編集コード)をよく使われることと思います。 EDTCDEは、数値を読みやすくするためのカンマ編集などを記述するためのコードのこと。 iSeries Infomation Center - DDS 解説書: 表示装置ファイル - 表示装置…

【AS400】QRYプログラムからSQL文を生成する方法

昨日、同僚から教えていただいたネタをひとつご紹介します。 私は、知らない機能だったので、衝撃でした。 SQLがよくわかっていなかった10年前に知りたかった機能でしたよ!!! と、こぼしていても始まらないので、さっそく試してみました。 QRYプログラム…

【JSF2】ViewExpiredExceptionが多発した原因

基本がきちんとわかっておらず、不具合を発生させてしまったケースとして、恥を承知で記録しておきます。 トラブル内容 リリースしたアプリケーションが、ここ数日間、やたらと「ViewExpiredException」が多発しまくるようになってしまいました。 ソフトウェ…

【AS400】コネクションプールの確認

GlassfishなどのAP Serverでコネクションプールの登録した場合、AS400ではどうなっているかの話です。 P-COMMでは、ネットワークの状況の照会にて、確認可能です。 ネットワークの状況の確認 WRKTCPSTSコマンド、またはNETSTATコマンドを実行します。 WRKTCP…

【雑記】2つのJavaイベント

2015年4月に、Javaの大きなイベントが2つあるようです。 1つは、「Java Day Tokyo 2015」。 2015/04/08(水)です。 Java Day Tokyo 2015 Java Day Tokyo 2015 そして、もうひとつが、「JJUG CCC 2015 Spring」。 こちらは、2015/04/11(土)。 CCC 2015 S…