浏览 2016 次
|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2006-01-23
我现在正在把以前 tapestry 3 的代码升级到 4,
以前获取用户 IP 使用的是 RequestCycle 的 getRequestContext() 方法 现在这个方法已经 deprecated 了, 而且注明要在 4.1 删除, 请问还有什么方法能够获得用户的 IP 吗? 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2006-01-23
有多种方式,下面是其中一种:
[code:1] <inject property="webRequest" object="service:tapestry.globals.WebRequest"/> this.getWebRequest().getServerName() [/code:1] |
|
| 返回顶楼 | |
|
最后更新时间:2006-01-23
我试了您的方法,org.apache.tapestry.web.WebRequest 并没有方法能得到用户的 IP 地址
|
|
| 返回顶楼 | |
|
最后更新时间:2006-01-23
Tapestry4.0正式版,我能从getServerName() 获取到IP。
|
|
| 返回顶楼 | |
|
最后更新时间:2006-01-23
谢谢您的帮忙,不过getServerName() 返回的是本地服务器的名称,我需要的是用户的IP地址
|
|
| 返回顶楼 | |
|
最后更新时间:2006-01-24
不好意思,我一直在内网开发,也没有仔细留意区别,你用下面的方式来获取吧:
[code:1] <inject property="servletRequest" object="service:tapestry.globals.HttpServletRequest"/> public abstract HttpServletRequest getServletRequest(); this.getServletRequest().getRemoteAddr() [/code:1] 这样肯定没有问题了。 |
|
| 返回顶楼 | |
|
最后更新时间:2006-01-24
搞定了,谢谢,不知您有没有时间写一个 tapestry 内置服务的文档,造福一下大众啊
|
|
| 返回顶楼 | |




