[Seasar-user:6338] IPアドレスの取得

友田 雅宏 [E-MAIL ADDRESS DELETED]
2007年 2月 26日 (月) 02:31:22 JST


友田です
 
質問ばかりで申し訳無いのですが
クライアントのIPを取りたいのですが、
普通にServletであれば
HttpServtetRequestからgetRemoteAddr()を呼び出せば取得できると思うのですが、requestを取得する方法を
調べてみたところ
ひがやすを先生のblogで
http://d.hatena.ne.jp/higayasuo/20060609#1149827583
 
class ... {  private ServletContext application;  public void setApplication(ServletContext application) {    this.application = application;  }とあったので、これだと思い使ってみたところ(この例ではServletContextだったので、下記に改良)
 
    private HttpServletRequest request;
 
    public xxxxxDto(){     this.clientname = request.getRemoteHost();     clientip = request.getRemoteAddr();    }        public void setRequest(HttpServletRequest request) {      this.request = request;    }
としてみたのですが、エラー
org.seasar.framework.exception.InvocationTargetRuntimeException: 
[ESSR0043]jp.mtomoda.www.dto.xxxxDtoが呼び出した対象が不正です。
理由はjava.lang.NullPointerExceptionとなります。app.diconに何かするのかとは思いますが、ひが先生のblogには「これまでと同様、request, session, servletContextに直接アクセスしたい場合は、次のようにします。」としか書いておらず、これまでと同様の部分を見つけることができませんでした。これまでと同様といわれる部分が何処に有るものかだけでも教えていただけないでしょうか?当然s2のバージョンは2.4以降(2.4.7)です 
_________________________________________________________________
さらに進歩した操作性と、スピーディーな検索結果。Live Search を今すぐトライ!
http://get.live.com/search/overview
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: http://ml.seasar.org/archives/seasar-user/attachments/20070226/17c3220c/attachment-0001.html 


Seasar-user メーリングリストの案内