`

WURFL - J2EE获取客户端移动设备信息

 
阅读更多

项目主页:http://wurfl.sourceforge.net/njava/

 

步骤如下:

1:将jar包引入到classpath中

wurfl-1.3.1.1.jar

 

2:Spring中Application.xml配置

	 <bean id="wurflManager" class="net.sourceforge.wurfl.spring.SpringWurflManager">

        <!--if you have only one patchfile , you can write this way-->
        <property name="wurflPatch" value="/WEB-INF/web_browsers_patch.xml"/>

        <!-- otherwise, for 2 or more patch files -->
        <!--
        <property name="wurflPatches">
            <list>
                <value>/WEB-INF/web_browsers_patch.xml</value>
                <value>/WEB-INF/web_browsers_patch2.xml</value>
            </list>
        </property>
        -->
    </bean>

 

 

3:将附件中的两个文件放到WEB-INF/目录下

web_browsers_patch.xml, wurfl.zip(此文件无需解压)

 

4:SERVLET中获取移动设备的主要代码如下:

WURFLHolder wurflHolder = (WURFLHolder) request.getSession().getServletContext().getAttribute(
		        "net.sourceforge.wurfl.core.WURFLHolder");
		WURFLManager wurfl = wurflHolder.getWURFLManager();
		Device device = wurfl.getDeviceForRequest(request);
 

相信你能在device中找到你想要的信息。

 

分享到:
评论
5 楼 zhoulei984623 2012-05-31  
增加

<listener>
  <listener-class>
    org.springframework.web.context.ContextLoaderListener
  </listener-class>
</listener>
试试


我的版本已经过时了,建议参考文章最上面的官方文档
4 楼 zhoulei984623 2012-05-31  
xuehanxin 写道
WURFLHolder wurflHolder = (WURFLHolder) request.getSession().getServletContext().getAttribute("net.sourceforge.wurfl.core.WURFLHolder");
得到的wurflHOlder为空


太含糊了,试着找到wurfl-1.3.1.1.jar的源代码进行DEBUG调试看看。如果找不到就把wurfl-1.3.1.1.jar反编译一下。
3 楼 xuehanxin 2012-05-30  
WURFLHolder wurflHolder = (WURFLHolder) request.getSession().getServletContext().getAttribute("net.sourceforge.wurfl.core.WURFLHolder");
得到的wurflHOlder为空
2 楼 zhoulei984623 2012-03-31  
具体错误呢
1 楼 Hai_Feng1108 2012-03-30  
不行啊,老是报空指针

相关推荐

Global site tag (gtag.js) - Google Analytics