メイン

2007年04月12日

JavaでのHTTPクライアント

Applet内部デバッグで使っています。
Appletからのログ出力はできないっぽいのでCGIに値を渡してログを出しています。
Getメソッドの場合

  public void debug( String str ){

      String _str = str;
      String debug_url = "http://デバッグ用CGIのURL?str=";
      
      try {
        URL _url = new URL( debug_url + _str );
        HttpURLConnection urlconn = (HttpURLConnection)_url.openConnection();
        urlconn.setRequestMethod("GET");
        urlconn.setInstanceFollowRedirects(false);
        urlconn.setRequestProperty("Accept-Language", "ja;q=0.7,en;q=0.3");
        urlconn.connect();
       
        BufferedReader reader = new BufferedReader(new InputStreamReader(urlconn.getInputStream()));

        while (true){
          String line = reader.readLine();
          if ( line == null ){
              break;
          }
        }
  
        reader.close();
       
        urlconn.disconnect();
        
      }
      catch(Throwable e){
    
      }finally{
        try{
        }catch(Exception e){}
      }
    
  }

Postメソッドの場合
  public void debug( String str ){
      String _str = str;
      String debug_url = "http://デバッグ用CGIのURL?str=";
      try{
        URL _url = new URL( debug_url );
        HttpURLConnection conn = (HttpURLConnection)_url.openConnection();
        
        conn.setUseCaches(false);
        conn.setRequestMethod("POST"); /* GET or POST */
        conn.setDoOutput(true); /* GET:false / POST:true */
        conn.connect();
        
        BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(conn.getOutputStream()));
        StringBuffer outBuf = new StringBuffer();
        /* GET の場合は URL にくっつける。 */
        outBuf.append("&str=").append(URLEncoder.encode(_str,"UTF-8"));
        writer.write(outBuf.toString());
        writer.close();
        BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream(),"UTF-8"));
        StringBuffer inBuf = new StringBuffer();
        String line;
        
        while((line = reader.readLine()) != null){
          inBuf.append(line).append('\n');
        }
        
        System.out.println(inBuf.toString());
        reader.close();
        conn.disconnect();
        
      }catch(Exception ex){
        ex.printStackTrace();
      }
  }

2007年03月25日

Hibernate Tools インストール

eclipseにHibernate Toolsをインストール

http://www.hibernate.org/ ここのダウンロードから

こっちへ進んで
http://sourceforge.net/project/showfiles.php?group_id=22866&package_id=72248&release_id=478192
HibernateTools-3.2.0.beta9a.tar.gzをダウンロードして解凍後、
eclipseのフォルダに上書きして再起動。

プロジェクトを選択して「新規」→「その他」でHibernate.cfg.xml編集ツールが選択できればOK



2007年03月18日

Eclipse 3.2 への Struts IDE プラグイン追加

EclipseにStrutsの開発をサポートするStrutsIDEを追加します。
少し前までEclipse 3.0 でしか動かなかったのですが 3.2 でも動きました。

http://www.eclipse.org/gef/よりGEF-runtime-3.2.zipをダウンロード解凍後、eclipseフォルダにすべてをコピーします。

https://sourceforge.jp/projects/amateras/files/ より以下のファイルをダウンロードします。
 ・tk.eclipse.plugin.struts_2.0.4.zip
 ・tk.eclipse.plugin.htmleditor_2.0.4.zip

解凍後、eclipseのpluginフォルダにコピーします。

eclipseを再起動します。
新規プロジェクト作成後、[ファイル]→[新規]→[その他]→[Amateras]→[Struts]→[Strutsサポートの追加] でStrust開発環境をプロジェクトに追加できます。
[Amateras]というのが以前と違って間に挟まれているようです。

これでstrutsプロジェクトに必要なjarファイル郡がコピーされ、 struts-config.xmlのグラフィカル編集ができるようになります。
既存プロジェクトの場合はそのままstruts-config.xmlのグラフィカル編集ができるようになります。

2006年12月10日

Spring フレームワーク

DIコンテナを学ぶならSpring フレームワークが良いと思います。
Seasar2よりも入りやすい感じが・・・w
Shale以外でもPHPのMaple DIコンテナロジックもSpringと似てますね、、、というよりぱくっただろw
今のうちから情報収集しておくといいですね。
サンプルがたくさんついてて解説も詳しい書籍がありますのでここに紹介します。
spring.jpg

2006年08月06日

Apache-Tomcatの連携

Linux上での設定です
まずはTomcatインストール
展開すればOK

tar xvzf jakarta-tomcat-5.0.30.tar.gz
mv jakarta-tomcat-5.0.30 /usr/local/src/
ln -snf /usr/local/src/jakarta-tomcat-5.0.30/ /usr/local/tomcat
#起動
/usr/local/tomcat/bin/startup.sh

http://host:8080/ でTOMCATテストページにアクセスできてJSPとServletのサンプルが確認できればOK

#停止
/usr/local/tomcat/bin/shutdown.sh

環境変数設定
vi /etc/profile
export CATALINA_HOME=/usr/local/tomcat
export CLASSPATH=$CATALINA_HOME/lib:$CLASSPATH
export CLASSPATH=$CATALINA_HOME/common/lib/servlet-api.jar:$CLASSPATH
export CLASSPATH=$CATALINA_HOME/common/lib/jsp-api.jar:$CLASSPATH


コネクタのコンパイル
JakartaのHPにあるLinux用のコネクタは環境によって動かないのでソースから作成します
tar xvzf jakarta-tomcat-connectors-jk2-src-current.tar.tar
cd jakarta-tomcat-connectors-jk2-2.0.4-src/
cd jk/native2/
./configure --with-apxs2=/usr/local/apache2/bin/apxs
make
cd ../../jk/build
ls
mod_jk2.so が出来ているのを確認
Apache のmoduleディレクトリにコピーする
cp mod_jk2.so /usr/local/apache2/modules/
cd ../../../conf/
設定用ファイルをコピー
cp jk2.properties /usr/local/apache2/conf/
cp workers2.properties /usr/local/apache2/conf/

*workers2.propertiesのサンプルにあわせる
cd /usr/local/tomcat/webapps/
cp -R jsp-examples exsamples

Apache.Tomcatを再起動する
http://host/examples  にアクセスできればOK

Tomcat側での動作確認後の設定
conf/server.xml
8080ポートをコメントにする この部分をコメントアウト
<!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 -->
<Connector port="8080"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" />

conf/web.xml
ディレクトリ一覧をfalseにします
<init-param>
<param-name>listings</param-name>
<param-value>ture</param-value>
</init-param>

2006年08月04日

JDKインストール

sun のページもしくは雑誌の付録などから入手します

./j2sdk-1_4_2_08-linux-i586-rpm.bin
chmod +x j2sdk-1_4_2_08-linux-i586.rpm
rpm -ivh j2sdk-1_4_2_08-linux-i586.rpm

「/usr/java/」以下にインストールされます

コマンドを確認
/usr/java/j2sdk1.4.2_08/bin/java -version
うまくバージョンが表示されればシンボリックリンクを張ってみます

ln -snf /usr/java/j2sdk1.4.2_08/ /usr/local/java
確認
/usr/local/java/bin/java -version

環境変数設定
vi /etc/profile
export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$CLASSPATH
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$CLASSPATH

2006年07月27日

Shaleの情報は

少ないですね

【Jakarta/Apacheウォッチ】第20回 Strutsの後継Shaleによるアプリケーション作成
http://itpro.nikkeibp.co.jp/article/COLUMN/20051007/222469/?ST=oss&P=1

Shaleのことが話題になってからもう1年以上にもなるぜ?
それにしてもJAVAのフレームワークは習得が難しく開発には人月もかかる
それならPHPでやったほうが早いね

2006年07月09日

JSPIDER 実行

JSPIDERとはJAVAでできたスパイダーツールです。
J2SDK 1.4以上で動きます。
インストールはアーカイブダウンロード後、解凍するだけ。

export JSPIDER_HOME=/opt/jspider/base.properties, skip.properties

設定ファイル変更
JSPIDER_HOME/conf/download/site

site.robotstxt.fetch=true
site.robotstxt.obey=true
     ↓
site.robotstxt.fetch=false
site.robotstxt.obey=false

/opt/jspiderbin//jspider.sh http://www.sexpixbox.com/tokyosecret/avlist/ download

INFO [mod.plugin.diskwriter.DiskWriterPlugin] Wrote ../output/./www.sexpixbox.c
om/tokyosecret/avlist/images/devi/10_lg.jpg
INFO [core.Spider] Stopped spider workers...
INFO [core.Spider] Stopped thinker workers...
[Plugin]
SPIDERING SUMMARY :
known urls ............. : 999

visited urls ........... : 460
parsed urls ............ : 115
parse ignored urls ..... : 345
parse error urls ....... : 0

not visited urls ....... : 539
fetching ignored urls .. : 538
forbidden urls ......... : 0
fetch error urls ....... : 1

not yet visited urls .. : 0
[Plugin] Spidering Stopped
INFO [core.Spider] Spidering done!
INFO [core.Spider] Elapsed time : 823396

ダウンロードが終わったらこんな風に表示されます。
本日始めて最後まで稼動させてみました!