struts2でresultの設定をxmlにもアノテーションにも指定しない方法

概要 struts2では基本的にはresultの設定はstruts.xmlに定義します。 (ここでは詳細は省きます)ただ、最近はconvention-pluginを使ってxml設定せずに画面表示させたり、リダイレクト等が必要なときはアノテーションを使って設定していることが多いと思いま…

経産省の山田課長補佐、ただいま育休中

男性の育休について書いている本ってこれくらいしかないですね。 折角なので読んでみました。経産省の山田課長補佐、ただいま育休中 (文春文庫)作者: 山田正人出版社/メーカー: 文藝春秋発売日: 2010/01/08メディア: 文庫購入: 2人 クリック: 126回この商品…

S2jdbcでエンティティ共通化とDao作成

前置き DBを使ったプログラムをやってると、全部のテーブルに共通するカラムがあったりします。 例えば作成日時とか最新更新日時とか。 そういう場合にすべてのエンティティクラスでそれらを定義するんではなくて、親クラスで共通なものは定義すると各エンテ…

男の育休中です

先日(といっても半月ほど前)、第2子が生まれてそこから育休を取得しています。男性の育児休業というのは取得率ですらあまり高くないみたいなんですが、今回は会社の理解もあってかなり長期的に取得することができてます。始まる前は、家事に慣れて育児も…

jQuery UI の.disableSelection()がdeprecated(非推奨)になってる件

メモのつもりがちょっと長くなりました。jQuery UIのsortable()とかを使おうと思っていろいろ検索してみると、 $(".sortable").sortable(); $(".sortable").disableSelection(); みたいに書いている人が多くてそのまま使っちゃいそうなんですが、.disableSel…

jQuery UIのsortableでconnectWithオプションを指定して他の一覧へ移動する

他のsortable要素を指定することでその一覧に、対象の一覧内の要素を移動することができます。 http://api.jqueryui.com/sortable/#option-connectWithデモ画面このデモ画面では、 id="sortable-li-src"の一覧からid="sortable-li-dst"の一覧に移動できるよ…

jQuery UIのsortableでhandleオプションを指定してクリックできる要素を限定する

jQuery UIのsortableをデフォルトで使用すると、要素のどこでもクリックして並び替えを開始できます。(正確にはできない要素もあります、後述します) 特定の要素だけに限定させるオプションがhandleです。 http://api.jqueryui.com/sortable/#option-handl…

jQuery UIのsortableでplaceholderを設定

jQuery UIのsortableでplaceholderオプションを指定すると下図のようにドラッグ先の場所のCSSスタイルを設定することができます。 (図では項目2をドラッグアンドドロップしようとしています) placeholderオプション指定 http://api.jqueryui.com/sortable/…

jQuery UIのsortableを使ってドラッグアンドドロップで並び替え

よく一覧表示させておいてそれを並び替えさせたいときがあります。 今回はソート項目を指定して一括して並び替える方法ではなく、ある要素をドラッグアンドドロップで指定の位置に挿入しなおすということを容易にしてくれるjQuery UIのsortableというものを…

Mapion・日本一の地図システムの作り方

ちょっと前の本ですが読みましたMapion・日本一の地図システムの作り方 (Software Design plus)作者: 株式会社マピオン,山岸靖典,谷内栄樹,本城博昭,長谷川行雄,中村和也,松浦慎平,佐藤亜矢子出版社/メーカー: 技術評論社発売日: 2012/09/28メディア: 大型本…

EclipseでJava1.6から1.7、Tomcat6.0->7.0に変更する(Mavenあり)

プロジェクト新規作成時にはjava1.6で作られるように設定されていました。 ただ、1.6はEOLになっているので1.7に変更します。 これに併せてTomcatのバージョンも6.0から7.0に変更します。ちなみにEclipseはIndigoでMavenのプラグインはm2eです。 JRE1.7の確…

Unable to install breakpoint エラーがでた(Absent Line Number Information)

breakpointを設定してサーバ(Tomcat)をデバッグ実行すると、このようなエラーが表示されました。 OKをクリックするとbreakpoint自体は正しく動いているようです。参考までに、環境はこんな感じで構築したものです。(まとめ) Unable to install breakpoin…

struts2とseasar2でCRUD処理(colorbox編)

前々回と前回のCRUDアクション作成で入力値チェックを含むCRUD操作を実現しました。 今回は少し画面遷移を工夫して、入力画面はモーダルウィンドウを表示させて入力完了後に閉じるという形にしてみます。jQuery UIにもDialogというウィジェットが用意されて…

struts2とseasar2でCRUD処理(validation編)

前回のCRUDアクション作成(struts2とseasar2でCRUD)ではCRUDの操作ができることを確認しましたが、入力値チェックはやっていませんでした。 今回はstruts2のvalidationの仕組みを使って入力値チェックを行います。struts2では入力値チェックをValidation I…

struts2とseasar2でCRUD処理

今回はstruts2とseasar2でCRUD処理を書いていきます。 前提としてこのページの準備編(トランザクションあたりまで)が済んでいるものとします。 Bootstrapも使ってますが、なくても動くことは動きます。(表示が見難いだけです) Bootstrap設定メモ CRUDの…

Github Pages作成メモ

このブログを書いていてデモ画面を作りたいけどどこかいいホスティングサーバないかと見ていたんですが、なんとGithub上に作れるらしい。しかも無料で無制限。 ただし、静的ページのみでGithubの公開レポジトリ上においておく必要あり。 http://blog.eiel.in…

struts2のognl.NoSuchPropertyException

struts2でこのようなログが出力されることがあります。 WARN com.opensymphony.xwork2.ognl.OgnlValueStack - Error setting expression 'columnInfo.id' with value '[Ljava.lang.String;@716f5d2f' ognl.NoSuchPropertyException: entity.ColumnInfo.id(…

githubでgitのemailアドレスをダミーにしたらgithub上で他人のコミットになった件

再現性があるかどうかわかりませんが、ちょっと躓いたのでメモ。githubにローカルでコミットしたものをpushするためにgitにメールアドレスを設定するんですが、何しろパブリックレポジトリなのでアドレスをさらしたくない。 githubのHelpページにもフェイク…

colorboxを閉じた時に親ウィンドウをリロードする(reload on closed)

colorboxでモーダルウィンドウを閉じた時に親ウィンドウをリロードさせたかったので共通して使うためのコードを書きました。基本的な考え方としては、リロードさせるかどうかのフラグとリロードさせる関数を持っておいて閉じるイベントが発生した際に2つの…

struts2でjqueryとbootstrapを使う

これまでサーバサイドのJavaについてはいろいろ設定をしてきたので、いったん置いておいてクライアント側の環境も整えていきたいと思います。 準備まとめの準備編(Java)を前提にしています。 「struts2でアプリ作成」は必須。「struts2とseasar2を使ってアプ…

seasar2にトランザクションをかける

トランザクションが必要ってことは、いまさら説明する必要もないので省略します。そういう前提があるので最近のフレームワークは自動でトランザクションを開始して正常終了したらコミット、異常が発生したらロールバックするという仕組みを持っています。 Se…

struts2とseasar2でのlogging

このブログでは、struts2とseasar2を使ってアプリ作成をしようとしています。 (参考) 何も設定していない状態でもログは出されているようですが、明示的に設定を行ってみます。 struts2でのloggingについて struts2では、SLF4J、commons-logging(log4J)…

struts2とseasar2を使ってアプリ作成(準備その4)~警告WSSR0008続編

新しいActionSupportの作成 準備その3 で、の対応として「ActionSupportを使わない」として、こういう風に書きましたが とはいっても、ActionSupportは何かと便利でもあるのでsetContainerの形を変えて作り直すのもいいと思います。 なかなか作り直すのも面…

struts2とseasar2を使ったアプリ作成まとめ

準備編(Java) struts2でアプリ作成 準備編1(struts2を使ってプロジェクト作成=>画面作成) 準備編2(追加の設定) struts2とseasar2を使ってアプリ作成 上の「struts2でアプリ作成」を前提としています その1(struts2-seasar-pluginを使ってS2JDBCでDB接続…

struts2とseasar2を使ってアプリ作成(準備その3)~警告WSSR0008

前回の続き。 こういうメッセージが出たときの対処について。 警告: ~~Actionのプロパティ(container)が見つからないので設定をスキップします メッセージの意味 このメッセージの内容を調べてみると、s2-framework-2.4.xx.jarのSSRMessages_ja.properties…

struts2とseasar2を使ってアプリ作成(準備その2)~DI自動設定

前回の続き。 コンポーネントの自動登録(定義の自動生成)設定 前回までの話だと、アクションクラスをコンポーネントに登録(設定)する作業をアクションごとに行っていました。 また、前回はアクションクラスだけでしたが、DaoクラスやServiceクラスについ…

struts2とseasar2を使ってアプリ作成(準備その1)

今回はstruts2-seasar-pluginを使ってS2JDBCでDB接続できるところまで確認します。 struts2-seasar-pluginstruts2でアプリ作成(準備編2)の続きです。 pom.xml 必要なライブラリは下記を参照してpom.xmlに追加します。 http://s2container.seasar.org/2.4/j…

struts2でアプリ作成(準備編2)

前回の作業でとりあえず枠組みはできました。 http://kamegu.hateblo.jp/entry/2013/04/02/164939今回は、それを補足する設定を追加していきます。 リクエスト先が定義(設定)されていない場合の動作について 前回の設定のままで、例えば/myapp/hogeにアク…

JenkinsでNoSuchMethodError(Java)

メモJenkinsでMavenプロジェクト(JavaのWebアプリ)を自動ビルドさせてできたwarファイルをデプロイするとjava.lang.NoSuchMethodErrorが発生しました。原因は何かというと、古い状態のままコンパイルされた状態のclassファイルが有効になっていたため。 例…

struts2でアプリ作成(準備編1)

準備編としているが、Eclipseの準備はできている前提。 m2e(Maven管理用プラグインくらい。。。)ここを参考にしました。 http://d.hatena.ne.jp/uriyuri/20080430/1209540139 プロジェクト作成 File->New->ProjectからWeb->Dynamic Web Projectを選択 プロジ…