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

メンチカツには醤油でしょ!!

ITエンジニア徒然 (AWS/Java/JavaScript/Google Spreadsheets/Jenkins/Mac/外部コミュニティ・勉強会レポ)

Wildfly on Docker(jboss/wildfly)でコンテナ外部から色々設定

$ sudo docker pull jboss/wildfly https://hub.docker.com/r/jboss/wildfly/ Dockerfile FROM jboss/wildflyRUN /opt/jboss/wildfly/bin/add-user.sh 【user】 【password】 --silentADD your-awesome-app.war /opt/jboss/wildfly/standalone/deployments/C…

Struts2でApache POIのExcelダウンロードで日本語ファイル名が文字化け

環境 ・Wildfly 10.0.0.Final・Struts 2.3.29・Struts Convention Plugin 2.3.29・Struts2 CDI Plugin 2.3.29struts.xml での struts.enable.DynamicMethodInvocation は true 現象 Apache POIで生成したxlsをStruts2でダウンロードすると日本語ファイルが文…

Wildfly(JBoss)+JPA+MySQLで日本語が文字化け

最初文字コードの問題なのかと思ってたら… d.hatena.ne.jp さすがのきしださんです。 NativeQueryのパラメーターのバインドでも some_field_name like concat('%', ?, '%') みたいなことやって日本語をバインドしてもやっぱ取れません。私はこっちの問題から…

Struts2のJSP内でstaticメソッドを呼び出す方法

環境 ・Struts 2.3.29 EL式とかOGNLを使うのですが Struts2にはELやOGNLなどがあり下記のサイトが大いに参考になるのですが sites.google.com 上記のサイトを参考に <s:if test="%{sampleSign == @fully.qualified.package.ConstantClass@SAMPLE_SIGN_A}"> こんな感じのコードを以前実装しており、既に動いていたのでstaticメソッドも同様に呼び出</s:if>…

Lombokでbooleanのgetterの接頭辞をisからgetに変える方法

booleanのgetterがisになっちゃう Eclipseでもデフォルトのgetter接頭辞はisになっていることがありますがgetで統一したいこともあると思います。オレオレO/Rマッパーとかコードジェネレーターとか使ってると特に… Eclipseだと ウィンドウ ⇒ 設定 でJava ⇒ …

Lombokの@Getter @Setterに@Overrideを付ける

先に断っておきますが、たいした内容ではないです。 Lombok便利ですよね。getter/setterなどの見た目上は無駄なコードの生成をやってくれます。 親クラスでgetterやsetterがabstractメソッドで存在している場合は@Overrideを付けたい場合があります。 @Overr…

Javaで英単語を単数形/複数形に変換する処理 (singularize/pluralize)

要件 英単語を単数形⇔複数形に変換したい、逆も然り、Javaで。 具体的には 単数形⇒複数形への変換は単語にsを付けるだけと思いきや・box⇒boxes のようにesが付くパターン・company⇒companies のようにyが消えてiesが付くパターン・people⇒person のように違…

Struts2+CDIでラムダを使ってるクラスでThere is no Action mapped for...が出る

誠に遺憾です 環境 ・Wildfly 10.0.0.Final・Struts 2.3.29・Struts Convention Plugin 2.3.29・Struts2 CDI Plugin 2.3.29struts.xml での struts.enable.DynamicMethodInvocation は true どこでどうエラーになるか ・Wildfly始動時:問題なし ・(始動後初…

Struts2をTomcat⇒Wildfly10に移行してEE環境(CDI+EJB+JPA)にしたら動かなくなった

Tomcat…+Strus2+JPA(EclipseLink)をWildfly10+Struts2(ここはそのまま…)+CDI+EJB+JPA(Hibernate)でEEになったのになぜか色々動かなくなった件について上手に書けたら公開します。。— Ryoichi Obara (@ryoichi_obara) June 16, 2016 上手に書けたら…と言いつ…

MySQLにWildflyで接続する場合のコネクターのバージョン (WFLYCTL0013 / WFLYJCA0040)

環境 ・Wildfly 10.0.0.Final・MySQL (AWS) 先に結果 6系ではなく5系を使う。(今回はmysql-connector-java-5.1.39.jarを利用) エラーメッセージ 管理コンソールのテスト接続の時点でこんなエラーが出ます。 ERROR [org.jboss.as.controller.management-opera…

Java EE GuardiansとJava EEの未来やOrcleとJCPについて

まず最初にJCPについて説明しますよ Javaの仕様策定というのはOracle社がやっているわけではなくSun時代に"Javaの仕様策定はコミュニティベースでやっていこう"と打ち出された斬新な戦略だったのです。それがJCP (Java Community Process) であり誰でも参加…

Bootstrapでspanアイコン(Glyphicons)が出なくなった時の対処方法

現象 Bootstrapでspanアイコン(Glyphicons)が出なくなった時の対処方法です。 <span class="glyphicon glyphicon-search" aria-hidden="true"></span>で実装しているアイコンが出なくなった。(四角い表示になってしまった場合の対処法です) こんな表示になるんですよね… .woffはバイナリ BootstrapのglyphiconsはFontAwesomeを利…

Struts2で表示言語を動的に切り替える。しかもアプリ内で

環境 ・Struts 2.3.24.1・Struts Convention Plugin 2.3.24.1struts.xml での struts.enable.DynamicMethodInvocation は true 前置き 表示言語といっても色々あるのですが、リソース(ApplicationResources.properties)のStruts2で表示言語の切り替えはstrut…

その発想はなかった! "ファイル名を指定して実行"の新しい使い方

またまた チキン大好きChicken yutaさんの投稿にまたまた反応しての投稿です。Windowsの「ファイル名を指定して実行」でよく入力するコマンドTOP10なお、私はソースのかかっていないメンチカツが大好きです。 そろそろネタをパクってるだろと怒られそうです…

GitBucketでPR時にブランチが選べない時の対応方法 (v3.13〜4.0)

先に言っておきます 4.1で解消される予定とのことです。https://github.com/gitbucket/gitbucket/issues/1191id:takezoe さんコメントありがとうございます! GitBucketのUI変更 大人の事情でGitBucketは3.13~UIが変更になっています。 3.13以降にバージョ…

文字入力を最強に楽にする方法 (IMEユーザー辞書登録キーを晒す)

チキン大好きChicken yutaさんのポストに反応するように投稿です。Windowsの単語登録を使って定型文の入力を楽にする 前置き まぁ知ってる方はな〜んだって感じですが、でも知ってる方の方がちゃんと見てくれそうな気がします。改善や効率化から程遠い所から…

Java Day Tokyo 2016に行ってきたので雑だけど感想を書く

#JavaDayTokyo 着席 pic.twitter.com/OnTq9dCQBz— Ryoichi Obara (@ryoichi_obara) 2016年5月24日 Keynote: Innovate, Collaborate, with Java 労働力が低下してITが寄り添うことが経済には重要と。 NetBeans IDEの開発デモがかなり良かった。HTML/JS/CSSコ…

Pleiades Eclipseでコード補完時に突然落ちる (JDK8u92)

現象 Pleiades Eclipse (Luna) でJavaのコード補完 (Ctrl + Space) をするとEclipseが突然落ちる。別マシン(同僚)でも発生。 C:\pleiades.luna\eclipse\*.logにエラーログが出てて、ダンプか何かが書き出されている。 環境 ・Pleiades All in One 4.4.2.v201…

gitでコミット名とかがおかしくなった場合の対処法

Git

設定は3種類 コミット名の設定箇所は・リポジトリ毎の設定・ユーザー設定 (/Users/ryoichi0102/.gitconfig など)・システム設定と3箇所あり、この中のいずれかが使われます。 コミット名がおかしくなるとgitをブラウザで見た時にユーザーへのリンクが正常に…

Spreadsheetsでも愛が生まれた

Qiitaで流行ってるらしい qiita.com 要は文字コードの演算 生と死の間(?)から愛が生まれるらしい Spreadsheetsでやってみた (Javaでやろうとしたらもちろん先駆者が居たので) Excelでもできると思います。 dec2hex(code(A1))でUnicodeに変換して各文字をmid…

Struts2のメッセージを独自カスタマイズして表示する

バージョンと設定 ・Struts 2.3.24.1struts.xml での struts.enable.DynamicMethodInvocation は true Struts2のメッセージ表示は <s:fielderror /><s:actionerror /><s:actionmessage />のタグがありますが、一気に表示されてしまうのとtheme="simple"といえど<LI>タグなどは出てしまい不要で、完全にシンプルとはい</li></s:actionmessage></s:actionerror></s:fielderror>…

Struts2のInterceptorでActionエラーハンドリング

バージョンと設定 ・Tomcat 8.x・Struts 2.3.24.1struts.xml での struts.enable.DynamicMethodInvocation は true エラー時は自画面に戻したい Interceptorが呼べるようになるとやりたくなるのがログ書き出し・エラーハンドリング・ログインチェックあたり…

Tomcat8で外部properties/xmlなどの設定方法

バージョンとやりたいこと ・Tomcat 8.x Tomcatにwarをデプロイするのだけれども、メッセージ用のpropertiesやログ用のxmlは、war外出しで配置したい。 ぐぐってすぐ出てくる情報だとできなかった。。 こんな感じにせいというのがすぐ出てくる情報なのですが <Loader className="org.apache.catalina.loader.VirtualWebappLoader" virtualClasspath="${basedir}/target/classes" /></loader>…

SourceTreeで 'git status' がコード -1 で終了しました: System.ComponentModel.Win32exception: 指定されたファイルが見つかりません。

SourceTreeを使ってみたら 今までコマンドとEGitしか使ってなかったのですがEGitのヒストリーのツリー表示がmasterやdevelopなどの縦線を固定してくれないので(つまり樹形図のdefault branch固定したい…)ちょっと期待もあってSourceTreeを入れました。 起…

Struts2のInterceptorを挟むとActionへ値が渡らない

バージョンと設定 ・Tomcat 8.x・Struts 2.3.24.1struts.xml での struts.enable.DynamicMethodInvocation は true そもそもInterceptorを呼び出すのに苦労… struts2-convention-pluginを使ってDynamicMethodInvocationをtrueにしているとstruts.xmlにてpack…

GitHubユーザーアカウントを1つにまとめる方法

GitHubユーザーアカウントを2つ以上持っていてそれを統合したいって方へ向けてです。 どれを残すか たとえばA,B 2つのリポジトリがあるとします。(本稿内ではずっとA,Bや新旧などと表現します) どちらを残すかですが、判断基準としてはプロフィールページ上…

API Gatewayのリクエスト回数制限を上げる

429 Too many requests... AWS初心者向けです。API Gateway便利ですよね。さくっとhttpsでAPIが用意できるところなんて本当ステキです。 で、Deployしてテストで何回か叩いてると429 "Too many requests"が出ることがあります。 要するにリクエスト回数が制…

xmlの検証で"文書に対する文法制約(DTDまたはXMLスキーマ)の参照がありません。"を解消させる

Eclipseビルド警告(warn)撲滅週間です。 特にxmlがヤラしいのです。今回はAntのbuild.xmlです。 先頭に <project name="properties-exchanger" default="devlocal"> みたいに書くと思いますが、文書に対する文法制約 (DTD または XML スキーマ) の参照がありません。が出るんですねぇ。 AntにおいてはxmlのDTDが定義し</project>…

Struts2でs:submitのvalue指定にてリソースファイルの内容から表示文字列を取得

バージョン Tomcat 8.xStruts 2.3.24.1 元々は <s:submit cssClass="btn btn-info" value="ログイン" />って書けば <input type="submit" id="login_0" value="ログイン" class="btn btn-info"/>ってなるんですが、普通はJSPに直書きしないでpropertiesから読みますよね。 なので JSPが<s:submit cssClass="btn btn-info" value="【ここをbutton.login】" />でリソースのpropertiesでbutton.log…</s:submit></s:submit>

Gmail宛に携帯から送信されたメールだけをスマフォ通知する

まぁGmailにそんなオプションは無いわけですが方法はあるわけですよ。 経緯 最近はMNPやMVNOなどの流行でGmailアドレスをメインのアドレスで使ってる方を結構見かけるようになりました。私もその一人です。 ガラパゴスな方とメールのやりとりをする場合にメ…

IFTTTでREST APIを用意してiPhoneに通知

前置き 前回はIFTTTで初めてのRecipe作成について紹介しました。work withから選択すると予め公開されているRecipeしか使えないので今回は新規作成と設定についてです。 そして、APIの入り口を作って、そこが叩かれたらiPhone(スマフォ)へ通知というところま…

IFTTTで、はじめてのRecipe作成 (work withから)

前置き 前回はIFTTTの概要と登録までについて紹介しました。 ryoichi0102.hatenablog.com 実際に何か設定してみましょう 登録後はこんな画面になると思います 右にスワイプするとMy Recipes一覧が表示されます。 登録したレシピはここに表示されます。 追加…

「ある条件を満たすと、ある動作をさせる」ことができるIFTTTが凄い

いまさら感(?)ありますが、IFTTT(イフト【íft】)について今回は概要を書きます。 IFTTTとは IFTTTとは"If This Then That"という意味のWebサービスで「ある条件を満たすと、ある動作をさせる」を設定し、自動実行させることができます。 ここが凄い thisとth…

Google Chromeが起動しなくなった

アップデートのためにChromeを再起動したら起動しなくなったんよねー。 C:\Program Files (x86)\Google\Chrome\Application\chrome.exeクラスが登録されていません とのこと。 PCを再起動してもダメ。タスクバーのピン留めを外してから起動してもダメ。 結局…

Ubuntu 14.04 LTSでcron設定

なりゆき Ubuntuを入れたマシンにcronで定時実行したい処理があったのでそれを設定した時のメモです。 cronサービスが生きてるか確認 $ sudo service cron status 実行シェルを配置 $ cd /etc/cron.d/$ sudo cp ~/temp/***.sh ./$ chmod 644 ***.sh sudoでや…

GitBucketのユーザー名(USER_NAME)を変更

前回、 ryoichi0102.hatenablog.com という記事を書きましたがたとえばサーバー引っ越しの際に、AD連携(LDAP認証)に切り替えるぞ!なんて変更があったりするとユーザー名をドメインアカウントに名寄せする必要が出てくるわけですね。しかしながらユーザーが…

GitBucketサーバーのIPアドレスが変更になった時にやったこと

掲題の通りで、GitBucketサーバーのIPアドレスが変更になった時にやったことです。 UbuntuでのIPアドレス変更 Linux/UbuntuでIPを自動取得から固定IPに変更する - 情報技術の四方山話 GitBucketでの設定変更 base_urlの変更をします。 gitbucketのサーバ移行…

Google Search Consoleから「http://~~~/ での不適切な hreflang 実装」

Google Search Console を設定してある時から http://jquery-workshop.hatenablog.com/ での不適切な hreflang 実装というタイトルのメールが来てしまった。 メールの内容 Message type: [AAA-000000] Search Console http://jquery-workshop.hatenablog.com…

Gitリポジトリをブランチ含めて引っ越す際の方法、または、ブランチ名を変更する方法

同じGit上の名称変更なら Settings⇒Options⇒Repository name欄から変更できまっせ。(GitBucketも同様) 本稿は引っ越しについて書いています たとえば・社内GitBucket⇒社外GitHub・社外GitHub⇒社内GitBucketなどのリポジトリの引っ越しの場合です。移動できる…

#devsumi 2016参加レポ (Developers Summit 2016) 最終日 (2/19)

デブサミ2日目です! 1日目の記事から少し時間経ってしまいましたがデブサミ2日目にして最終日のレポです。(決して46時間カンヅメしてて遅くなったわけではないですwwwlb) 大規模BIクラウドWebサービスの裏側~Waveの内部アーキテクチャとデザイン理念~ S…

#devsumi 2016参加レポ (Developers Summit 2016) 初日 (2/18)

今年もデブサミへ! 今年は"業務時間として"初の参加となりました。参加自体は3年目となります。やはり年々参加していると周囲の理解も得られるようになるもんですね(多分) 今年のテーマは Hack the Real ということで【ソフトウェアエンジニアの「知」で、…

UMLでのuseとcallの違い

UML

というか全然(?)違うんですけどね ちょっと知らなかったというか厳密な定義が気になったので調べてみました。 英語の意味的にはuseは"使用"でcallは"呼び出し"なのでインスタンスを保持しているかどうかかなぁなんて推測したりもするんですが果たして。 によ…

OracleのimpでIMP-00010が発生してdmpをインポートできない(12c/11g)

>imp 【ユーザー名】/【パスワード】@【ホスト名】:【ポート番号】/【サービス名】 file=【ファイル名】 上記はimpコマンドの例ですが、これで下記のようなエラーが発生した場合の話です。 IMP-00010: 有効なエクスポート・ファイルではありません。ヘッダー…

Git for Windowsでブランチ作成~commit~push~Pull Requestの流れ

セットアップ編はを参照ください。 今回はGitの醍醐味とも言えるプルリク(PR)までの手順を追って説明します。↓ ブランチ作成↓ ステージング (git add)↓ コミット (git commit)↓ push (git push)↓ Pull Requestの流れです。 せっかくGitを使うので(効率のよい…

Git for Windowsのセットアップから接続(clone)まで

タイトルの通りですが Git for Windowsのセットアップから接続までです。Git for Windowsでブランチ作成~commit~push~Pull Request もあります! 1-1. ダウンロード まずはhttps://git-for-windows.github.io/からGit for Windowsをダウンロードです。 1-…

GitBucketのssh接続でUnable to negotiate with 【接続先】: no matching host key type found. Their offer ssh-dss

GitBucketのssh接続で Unable to negotiate with 192.168.1.63: no matching host key type found. Their offer ssh-dss って出る。 そんな時は vi ~/.ssh/config とかで Host 【接続先】 HostKeyAlgorithms ssh-dss と設定してあげましょう。

Javaをアップデートして、Eclipse/Pleiadesを起動しようとしたらエラー

Javaをアップデートして、Eclipse/Pleiadesを起動しようとしたらエラー こんな感じ。 ----------------------------------------Java was started but returned exit code=13C:\ProgramData\Oracle\Java\javapath\javaw.exe-Dosgi.requiredJavaVersion=1.7-X…

残された側のdiffの話

この投稿は「diff」 DevLOVE Advent Calendar 2015 15日目のエントリーです。昨日のエントリーは@monokuro_tamagoさんによる「三種のDiff器」でした。明日は@takesectionさんです。 私について 製造業向けの中小SIerで、PMやアプリアーキテクトなお仕事をし…

はてなブログでGitHubのコードを貼り付け/引用する

gist-it が便利です。http://gist-it.appspot.com/ 使い方は、以下のスクリプトを本文内に挿入すれば埋め込みことができます。 <script src="http://gist-it.appspot.com/http://github.com/【ユーザー】/【リポジトリ名】/blob/master/【パス】"></script> または <script src="http://gist-it.appspot.com/github/【ユーザー】/【リポジトリ】/blob/master/【パス】"></script> といった感じでしょうか。 また、表示する部分をオプシ…

IE11(Edge)で画面遷移しないけどChromeとかでは動く

Java EE 6 / JSF 2.0 で。毎日WebSphereと戦ってました。。 POST-REDIRECT-GETを使っている関係なのかEdgeのバグなのかJSFで画面がまったく遷移しないなんてことがありました。 JSF2.0でボタンの2度押しチェックをする - 見習いプログラミング日記(PRG; POS…