早上好,
我正在使用eclipe和tomcat开发和测试一个与SAP OData服务对话的OData移动应用程序。开发完成后,应用程序将安装在SAP服务器上。
我试图使用用户界面服务(sap.ui2)来访问用户信息。
我的问题是,这个API似乎没有准备好从一个应用程序中调用/使用,该应用程序不是部署在Server上的。我看到的所有电话都是相对呼叫,因此找不到资源。
这是一个完整的样本:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta http-equiv='Content-Type' content='text/html;charset=UTF-8'/>
<script src="<my-sap-server>/sap/public/bc/ui2/services/sap/ui2/srvc/error.js"></script>
<script src="<my-sap-server>/sap/public/bc/ui2/services/sap/ui2/srvc/utils.js"></script>
<script src="<my-sap-server>/sap/public/bc/ui2/shell-api/sap/ui2/shell/startup.js"></script>
<script src="resources/sap-ui-core.js"
id="sap-ui-bootstrap"
data-sap-ui-libs="sap.m"
data-sap-ui-theme="sap_bluecrystal">
</script>
<script>
var user = sap.ui2.shell.getUser();
user.load({
// depthAtRoot: 1,
// nodeId: " ",
// depthAtNode: 1
},
function() {
//set user data in the json model
alert(user.getFullName());
},
function(sErrorMessage) {
/* failure handler: e.g. display load error */
alert(sErrorMessage);
}
);
</script>
</head>
<body class="sapUiBody" role="application">
<div id="content"></div>
</body>
</html>而错误是:
Failed to load resource: the server responded with a status of 404 (Not Found) http://localhost:8080/sap/bc/ui2/start_up?depth=0
2014-10-07 10:30:10 Error 404 in response for URL /sap/bc/ui2/start_up?depth=0 - sap.ui2.srvc如图所示,API假设ui2部署在我的本地服务器上,而不是部署在我加载库的远程SAP服务器上。
我已经搜索了sap.ui2 API,但没有找到改变这种行为的方法。
没有这一点,我有两种选择:
1-开始使用Server进行测试--这对我来说并不理想,因为开发和测试需要更长的时间
2-手动将URL up?depth=0调用到标准的SAPUI5 JSONModel --这是不可取的,因为如果SAP团队决定更改某些内容,我的应用程序可能会被破坏。
对这件事有什么想法吗?
提前谢谢。
发布于 2014-10-08 09:13:11
您需要的是Tomcat中的http://localhost:8080/sap/bc/ui2/start_up模拟服务。
该服务将返回一个虚拟JSON对象,如下所示:
{
"client": "200",
"email": "dummy@gmail.com",
"firstName": "Dummy",
"lastName": "Test",
"fullName": "Dummy Test",
"id": "DUMMY",
"language": "EN"
}https://stackoverflow.com/questions/26233165
复制相似问题