のアーカイブ

管理者だけに表示するポートレットを xreg で作る際の注意点

2017年5月17日

Aipoのポートレットである「管理ガイド」が管理者だけでなく、一般ユーザーにも表示されている場合がある、というチケットに取り組みました。結果としては再現すらできずに泥沼状態だったのですが、いくつか学びました。 まず、xreg は変更しても mvn install などは Tomcat を停止させてからでないと、変更が反映されないという点です。この点に関しましては、過去のエントリーの多さがハマりやすさの指標となっていると思います。([xregが反映されないとき](http
続きを読む

Velocity のログの確認方法

2017年5月10日

Eclipse のウィンドウを辿っていき、 NTailを表示することで、Aipo.log を含め複数のログが確認できます。 過去のエントリーを参考に用いたのですが、タブを消した+シークレットウィンドウで辿れないので、今後探してリンクします。 RHS of #set statement is null. というエラーログが大量に出ていたのですが、対応すべきかは今後考えます。
続きを読む

dojo.queryについて

2017年4月26日

jQuery の offset の使い方がいまいち分からず、dojoでできないかと探していたのですが見つかりませんでした。かわりに dojo.query について少し触れます。たくさんエントリーはあるので差別化を今後はかってゆきたいところであります。 ### dojo.query() とは [このページ](http://news.mynavi.jp/special/2007/dojo1/004.html)によると、 * Dojoの0.9から導入されたパワフルなA
続きを読む

アウトラインの見かた

2017年4月12日

コードの全体を把握したいけど、長くてすぐには追えない場合に、 **アウトライン** が便利でした。Eclipse では **アウトライン** を command + o (おそらく o for outline) で開けます。フィールドやメソッドの左には記号があり、白抜きがフィールドを示しています。また、赤は private を示し、黄は protected、 緑が public を示しています。 [アウトライン (Outline) ビュー](http://so-zou.
続きを読む

eclipseで新しいクラスを定義した後の留意点

2017年4月5日

新しいクラスを定義しファイルが作成された後、push する際に作業したファイルを指定する必要がある。端末上では git add --all の後に git status をして確認できるが、eclipse の GUI で何も考えずに push の作業をすると、設定が「新規で作成されたファイル等が指定されない状態」になっていることがある。そのまま状態だと作業したファイルが無慈悲に消滅するので、push する際は留意したい。
続きを読む

length と sizeの違い

2017年3月29日

ArrayList に当てるべきなのは length ではなく size でした。一方で、配列の要素数を返してほしいときは length でした。 よく考えないでメソッドを使っていると、しばしば今回のようにはまってしまいますので注意したいです。
続きを読む

Uncaught TypeError が出た時の対処法

2017年3月22日

どうしても onClick に貼った JavaScript のリンクが動いてくれなかったので、どこに問題があるのか迷っていたのですが、ようやく JavaScript が実行されている時に Console を確認することを学習しはじめました。Console を確認した所、以下のように指摘されていました。 ``` Uncaught TypeError: Cannot read property * of undefined at * ``` 結局、 javascrip
続きを読む

Eclipseで正規表現を用いた検索

2017年3月15日

今まで気付いていなかったのですが、Eclipseの検索で正規表現が使えました。任意のリソースを選択した後、 **control + h** で検索画面を開きます。検索画面の右に正規表現をチェックできるボックスがあるので、選択することで正規表現が使えるようになります。 なぜわざわざ正規表現を使ったかというと、**"hoge"data-type="hoge"** を **"hoge" data-type="hoge"** というように、data-type の前にスペースを入
続きを読む

wicketでinputを整形する

2017年3月8日

[前回](http://hacknote.jp/archives/25729/)で触れたのですが、WicketはHTMLとJavaでWebアプリケーションを構築するフレームワークです。特徴としては、HTMLの要素(Form等)をコンポーネントという枠組みで捉えることで、オブジェクト指向チックに動的なページを作成できることだと解釈しています。 前回に引き続き、Formから入力されたメールアドレスから空白を取り除く、という作業をwicketのフレームワーク内で解決するチケッ
続きを読む

wicketでwebアプリがどう作られるのか

2017年3月1日

# 現状のwicketに対する理解 ##WicketとJavaとHTMLの関係 WicketはHTMLとJavaでWebアプリケーションを構築する。HTMLで「画面」を作り、Javaで「画面に対するページクラス」を作る。その際、対応するHTMLとJavaは同名である必要がある。 ##コンポーネント HTMLの要素と対応し、Wicketから使用することができ、また自分で作ることも出来る。HTML内でwicket指定されている要素は、Javaで作成されたページクラスでも指
続きを読む

mvn install で BUILD FAILURE になる時に検討すべきこと

2017年2月15日

mvn install で BUILD FAILURE になる時に検討すべきことを以下に引用します。 * pom.xml の依存関係が変更されていない http://hacknote.jp/archives/15484/ * pom.xml の変更が .classpath に反映されていない http://hacknote.jp/archives/18671/ * JavaScript内で構文エラーが起きている http://hacknote.j
続きを読む

Firefoxにおける更新とキャッシュの関係

2017年2月8日

ブラウザ間の挙動の差にかなり頭を悩ませているのですが、どうやらキャッシュが関係していたのかもしれません。更新には少なくとも2種類、 hard reload と呼ばれる更新と普通の reload があります。これら2つの更新では結果が異なり、その差はキャッシュの扱いのようです。 他の方の投稿にキャッシュを無効化する方法が載っていたのですが(リンクは後に更新いたします)、Velocityで同様の操作が出来るかはまだ不明ですので、後の課題とさせていただきます。
続きを読む

Pythonで対話的にスクリプトを走らせる

2017年2月7日

Python 3.X でスクリプトを対話的に走らせる方法を二つ、以下に記述します。 1つ目は以下のようにファイル名の指定の前に "-i" をつける方法です。これにより、任意のファイルの実行後に対話モードが開始されます。 ``` python -i hoge.py ``` 2つ目のほうが汎用性が高いかもしれません。対話モード中に(限らず)、 ``` exec(open("./hoge.py").read()) ``` で任意のファイルを実行できます。
続きを読む

バグが再現できないとき

2017年2月1日

どうしても再現できなかった場合、バグの報告があったブラウザとバージョンを確認します。バグの場合は恐らく、最初からこの確認を行うのが好ましいと思われます。
続きを読む

Velocityを使ったフォームの作り方

2017年1月11日

ウェブページ上の動作でデータの送信や更新をしたいときに「フォーム」が使われますが、その方法の一つとしてVelocityで組まれたマクロを使ったものがありました。今回の内容は[こちら](http://hacknote.jp/archives/1243/)のエントリーを参考に理解を進めました。 Velocityの[マクロ](http://www.techscore.com/tech/Java/ApacheJakarta/Velocity/6/)を用いて、繰り返し使用されるH
続きを読む

Tomcatのインストールに失敗するとき

2016年12月28日

家のパソコンでチュートリアルを見ながらTomcatをインストールしようとしたのですが、 ``` Failed to install Tomcat6 services. Check your settings and permissions Ignore and continue anyway (not recommended)? ``` というポップアップが出てきてしまいました。 その時点ではインスト―ルが途中まで終わっており、logsの下にあったlogを見
続きを読む

#ALajaxbuttonEditCallback()で「編集ボタン」をVelocityで作るとき

2016年12月21日

他のファイルを参考にしながら「編集ボタン」を作ろうとしたのですが、使用されていた#ALajaxbuttonEditCallback()に苦労しました。buttonのヘッダーとフッターの間に#ALajaxbuttonEditCallback()はあるのですが、その引数が初見だと理解が厳しかったです。 ``` ALajaxbuttonEditCallback("$!jslink.getPortletById($!portlet.ID).addQueryData('templa
続きを読む

Velocityでの変数の注意点①

2016年12月14日

[こちら](http://www.techscore.com/tech/Java/ApacheJakarta/Velocity/2/)にあるように、Velocityでは「変数の前につける $」の後ろに「!」をつけると変数が表示されなくなります(Silent表記)。コピペなどでSilent表記をよく考えずに複製した結果、条件文にも使ってしまい、常にFalseとなってしまいました。表示と出力は別だと考えていたので「表示されないけど出力はされるであろう」と確認せずにコピペしてしま
続きを読む

一つの画面で2つのウィンドウを使う

2016年12月7日

WindowsやUbuntuを使っているときは画面をショートカットキーで簡単に分けられたのですが、Macに慣れておらず画面がかなり散らかってしまいます。そこで[Split View](https://support.apple.com/ja-jp/HT204948)を使ってみました。 ウィンドウの左上の緑色のボタンを長押することで、画面を割ることが出来るようです。長押しした後に他のウィンドウを選択することで分割でき、境界を動かすと2つのウィンドウが境界を保ったままサイズ
続きを読む

DropdownDatepickerのカレンダーの幅の変更(2)

2016年11月9日

[前回](http://hacknote.jp/archives/23410/)、displayCheck(@ajax-todo-form.vmのdiv内)という変数に"none"という値が入っていると、どうやらカレンダーのサイズが200pxになるという点がわかりました。このパラメターの説明を、「追加フォームの「日時」にある、「指定しない」(日付を)というボタンの有無を決定するものです。」と述べたのですが、違うようです。 displayCheckはaipo.widget
続きを読む