我是JQuery Mobile的新手。我有一个基于Apache Wicket的应用程序,我想尝试JQuery Mobile,因此它看起来更适合移动设备。不幸的是,我得到了所有页面链接的"Error Loading Page"
错误,在切换到JQuery Mobile之前我从来没有遇到过问题。根本原因似乎是HTTP请求中包含的URL。我使用JQuery Mobile 1.2.0,JQuery 1.8.0,Wicket 1.5.5,使用jetty server 6.1.26和FireFox 16.0进行本地测试。以下是代码片段:JQuery Mobile Error加载Wicket BookmarkablePageLink
<ul data-role="listview" data-theme="b">
<li><a href="#" wicket:id="metaprofileList" rel="external">List</a>
</li>
</ul>
相应的Java代码:
add(new BookmarkablePageLink<MetaprofileListPage>(
"metaprofileList", MetaprofileListPage.class));
基于上述,Wicket的正确href="#"
与页被真实的URL替换"#"
,所以最终的HTML看起来像以下内容:
<ul data-role="listview" data-theme="b">
<li><a href="com.alcatel_lucent.nms8770.awol.client.web.page.MetaprofileListPage" wicket:id="metaprofileList" rel="external">List</a>
</li>
</ul>
当点击该链接,Jetty服务器发送带有以下网址如下HTTP请求:
GET http://127.0.0.1:7999/com.alcatel_lucent.nms8770.awol.client.web.page.MetaprofileListPage [HTTP/1.1 404 Not Found 0ms]
这不是MetaprofileListPage的正确URL。之前,我切换到jQuery Mobile的,我也要用同样的场景进行测试,同样的码头服务器与正确的URL发送以下HTTP请求:
GET http://127.0.0.1:7999/wicket/bookmarkable/com.alcatel_lucent.nms8770.awol.client.web.page.MetaprofileListPage?7 [HTTP/1.1 200 OK 0ms]
我没有从HTML文件转换头唯一的变化:
<link rel="stylesheet" type="text/css" href="../../css/phone.css" media="only screen and (max-width: 480px)"/>
<link rel="stylesheet" type="text/css" href="../../css/default.css" media="only screen and (min-width: 1025px)"/>
<link rel="stylesheet" type="text/css" href="../../css/portrait.css" media="all and (max-device-width: 1024px) and (orientation:portrait)"/>
<link rel="stylesheet" type="text/css" href="../../css/landscape.css" media="all and (max-device-width: 1024px) and (orientation:landscape)"/>
<meta name="viewport" content="user-scalable=no, width=device-width"/>
要标准样板jQuery Mobile的包括:
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
<script src="http://code.jquery.com/jquery-1.8.0.min.js"></script>
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
我一直在为此而努力,持续2周:-(现在我需要做什么做的就是JQuery Mobile的工作负载正确的网址/页面?请帮忙!!非常感谢!!
它看起来像Wicket URL渲染器问题。 'com.alcatel_lucent.nms8770.awol.client.web.page.MetaprofileListPage'是一个错误的URL,因为Wicket 1.5默认URL以'wicket/bookmarkable /开头,你必须改变。可能它看起来基础网址是定义的或者是其他的东西。尝试升级到最新的Wicket 1.5.10。也尝试渲染完整的URL。可能尝试将base-url标题元素设置为解决方法。 –