投稿

ラベル(Web app)が付いた投稿を表示しています

java:/comp/env/jdbc/oracle

WebLogicとTomcatのJNDIデータソースの呼び出し、異なる一箇所があります。 「java:/comp/env/jdbc/oracle」です。WebLogicの場合は「jdbc/oracle」でかまわないがTomcatの場合はフルーパスを書かなくてはいけない。 まさに、そのせいで一日もはまっていた。

contex.xml

<Context path="/realm-test1"> <Resource name="jdbc/oracle" type="javax.sql.DataSource" password="s_hao" << DBパスワード driverClassName="oracle.jdbc.driver.OracleDriver" maxIdle="2" maxWait="5000" username="s_hao" <<DBユーザID auth="Container" url="jdbc:oracle:thin:@dimension02:1521:orcl" maxActive="4" /> <Realm className="org.apache.catalina.realm.DataSourceRealm" dataSourceName="jdbc/oracle" localDataSource="true" roleNameCol="role_name" <<認証用ユーザロールのカラム名 userCredCol="passwd" <<認証用ユーザパスワードのカラム名 userNameCol="emp_no"  <<認証用ユーザIDのカラム名 userRoleTable="user_roles" <<認証用ユーザロールのテーブル名 userTable="app_user"   <<認証用ユーザのテーブル名 debug="99" /> </Context>

J2SEバージョン6に移行する注意点

J2SEのより新しいバージョンに移行する際に、インタフェースが殆ど変わらないが、以外的に動かなくなってしまう場合があります。 1.クラス名の先頭文字が小文字の場合 え? と思われるかもしれませんが、くだらないコーディング方法でJavaを記述する技術者は多々存在します。 コンパイルは通す、バージョン1.4の場合は動く、1.6に移行するとコンパイルは通けど、Springでオブジェクトを作成する際、オブジェクトを取得できない現象があります。 (メタレベルクラスでオブジェクトを作成できないでしょうかな)

Struts2 Profiling note

Activating / Deactivating Profiling Activating / Deactivating of the profiling feature could be done through:- Through System property -Dxwork.profile.activate=true This could be done in the container startup script eg. CATALINA_OPTS in catalina.sh (tomcat) or using "java -Dxwork.profile.activate=true -jar start.jar" (jetty) About this config see tool-wrapper.sh

Transparent PHP AOP

使えるどうか、分からないけど、調査します。

XML-RPCの注意点【その2】――ただのjava.util.Listはだめ?!

なぜかしらん! なりすましたら XML-RPCの型タイプ のデータが流れていたが、 配列の戻り値はjava.util.Listにならなった。 HashMapだったら正常。 そもそもapache xml-rpcのクライアントライブラリは配列型をサポートしているのか、ちょっと疑問を抱いています。 今の所では、配列をつかないと解決できない問題がないかもしれないが、ちょっと、バグではないかと思います。 構造体を使うと、JavaBeanらしいなデータ構造を簡単に構築できるので、そっちにしようか。 該当する問題点は3.0b1に提出済み→http://ws.apache.org/xmlrpc/changes-report.html#3.0b1 Plum+に必要があったらSpringのAOPパワーでハックスする。

Ajax RSSリーダ

Gmail API関連のサイト

Gmail Agent API JGmail Java Gmailer PHP g4j - GMail API for Java

Tomcat上、GET で取得するパラメータの文字化け対策

検索してみたらTomcat上の文字化け対策がたくさんあるが 、 GetパラメータのURL文字列から2バイト文字(?)を取得したい場合、Tomcatのデフォルト設定だと化けてしまいます。 それを解決するために、Javaのソースコードレベルだけで難しいじゃないかと、TomcatのURL文字コードを設定する必要がある。 server.xmlを設定できれば簡単に解決できると思います。 具体的なやり方はserver.xmlにあるConnector要素のURIEncoding属性で、リクエストのエンコーディングを指定します。 <Connector port="8080" URIEncoding="UTF-8" />

XML-RPCの注意点【その1】――バイナリを送るな!

単純な問題ですが、今朝、1時間ぐらいもはまってしまった。 DBから、クエリのListを取得してクライアントに送信しようとしました。 リストにビーンインスタンスを渡すのが自分の常識だったですが、うまくいかなくて、なりすましたらレスポンス結果にこんなデータの値は『ex:serializable』タグのデータが入ってしました。 Apacheのライブラリを使っているので、 データタイプ を確認したら、serializableを使えそうだが、Java限定っぽい。 まぁ~、基本的にレスポンス結果にはJavaオブジェクトのようなバイナリデータ(byte[]-base64を除き)を使わず、テキストデータを送るようにすれば無難でしょう。

画像処理のJavaScriptフレームワーク

prototype JavaScript Framework

Apache Bean Scription Frameworkについて

JavaのWebアプリケーションを書くのに、Java及びJSPに限らず、さまざまなスクリプト言語を使ってコーディングできるようです。 最近、Pythonをやりたくて僕にはGoodニューズだろう。 関連リンク: Bean Scripting Framework 【Jakarta/Apacheウォッチ】第29回 Java SE6スクリプティング標準の実装「Apache BSF」 BSFメモ Jakarta BSF(Jakartaの杜)

SmartyのテンプレートにJavaScriptを記入したいとき

直接SmartyにJavaScriptのスクリプトを記入したいとき、下記のコマンドが必要です。 {literal}{/literal} サンプル: {literal} {/literal}

PHPのSQLインジェクションについて

いる人の記事を見てPHPのSQLインジェクションの対策を取り組むために、「Validate」まで使われたようでした。 本当に「Validate」って何のために存在するもんか全然理解されていなかったな。 今日のプログラムにSQLインジェクションの対策法を取り組んだので、メモしておこう。 本家の記事: http://php.liukang.com/manual/ja/security.database.sql-injection.php MySQLならこんな関数があるが↓ http://php.liukang.com/manual/ja/function.mysql-real-escape-string.php 僕はMySQLが(主観的に)嫌がる人間で、これがいいかも↓ http://pear.php.net/manual/ja/package.database.db.db-common.escapesimple.php なお、PHP5.Xの場合(4.X上の確認を行っていない)は、コードに $sql = "SELECT SEQUENTIAL_ID, LOAD_FLG, FILE_NAME, FORMAT_ID, MENU, LETTER, MESSAGE, ". " VALUE1, VALUE2, VALUE3, VALUE4, VALUE5 FROM TARIM_MENU_LIST_TBL ". "WHERE SEQUENTIAL_ID LIKE '%".$sequential."'"; を書いて、ログを出したらこのような文字列になりました SELECT SEQUENTIAL_ID, LOAD_FLG, FILE_NAME, FORMAT_ID, MENU, LETTER, MESSAGE, VALUE1, VALUE2, VALUE3, VALUE4, VALUE5 FROM TARIM_MENU_LIST_TBL WHERE SEQUENTIAL_ID LIKE '%200610_02\' OR \'1=1' DB_common::escapeSimple()を適用したらこんな文字列になりました SELECT SEQUE...