移动服务器集成
应用集成
下载服务器安装包http://pan.baidu.com/s/1eQKBXK2,使用菜单中的【系统工具-应用集成】进行集成,集成模块选择【引擎和展现】,设置集成文件路径后,即可一键集成。具体参见:应用集成。
集成文件下载地址:
IOS1.9.8和Android1.9.8地址:http://pan.baidu.com/s/1eQKBXK2。
Android1.9.9地址:http://pan.baidu.com/s/1jHd0Ef8。
接口实现
实现登录和资源树接口,并将接口实现类放入WEB-INF\classes\com\geezn\mobile\action中。
登录接口说明
- 接口类
com.geezn.mobile.interfaces.ILogin
- 接口方法
String processLogin(userId,password)
- 返回值
登陆成功时,返回值是“1”,
登陆失败时,返回值是"{\"loginrlt\":\"0\",\"failmsg\":\"失败原因\"}" 。
- 实现类配置
在mis2\geeznmobile\config\geeznMobileConfig.xml中配置loginClass项,如:
<config>
<name>loginClass</name>
<value>com.geezn.mobile.action.CustomMobileLogin</value>
</config>
- 登录接口实例代码
package com.geezn.mobile.action;
import com.geezn.mobile.interfaces.ILogin;
public class CustomMobileLogin implements ILogin {
public String processLogin(String id, String password) {
String rlt = "";
if ("root".equals(id) && "123".equals(password)) {
// 登陆成功
rlt = "1";
System.out.println("手机客户端登陆成功,执行了CustomMobileLogin");
return rlt;
}else if("zhangsan".equals(id) && "123".equals(password)){
// 登陆成功
rlt = "1";
System.out.println("手机客户端登陆成功,执行了CustomMobileLogin");
return rlt;
}
else{
rlt = "{\"loginrlt\":\"0\",\"failmsg\":\"无法登录,请与系统管理员联系!\"}";
System.out.println("手机客户端登陆失败");
return rlt;
}
}
public static void main(String[] args) {
System.out.println(new CustomMobileLogin().processLogin("root", "1"));
}
}
获取资源树接口
- 接口类
com.geezn.mobile.action.IGetPermittedRes。
-
接口方法:
String calcAvailableRes(userid, paramsMap)。
-
返回值格式:
json形式的资源列表。
-
实现类配置:
在mis2\geeznmobile\config\geeznMobileConfig.xml中配置getResClass项,如:
<config>
<name>getResClass</name>
<value>com.geezn.mobile.action.CustomGetPermittedRes</value>
</config>
- 资源树接口实例代码
package com.geezn.mobile.action;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.Map;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import com.geezn.mobile.interfaces.IGetPermittedRes;
import com.runqianapp.common.log.GEZLoggerManager;
import com.runqianapp.schedule.utils.PathUtils;
public class CustomGetPermittedRes implements IGetPermittedRes{
public String calcAvailableRes(String id, Map<String, Object> pMap) {
String path = PathUtils.getAppRealPath()+"/mis2/geeznmobile/config/customres.json";
//String path = "F:/GEZZN0522_20150615/tomcat/webapps/reportmis_branch/mis2/geeznmobile/config/customres.json";
File f = new File(path);
return jsonfile2String(f);
}
public static String jsonfile2String(File file) {
String result = "";
try {
BufferedReader br = new BufferedReader(new FileReader(file));// 构造一个BufferedReader类来读取文件
String s = null;
while ((s = br.readLine()) != null) {// 使用readLine方法,一次读一行
result = result + "\n" + s;
}
br.close();
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
public static void main(String[] args) {
System.out.println(new CustomGetPermittedRes().calcAvailableRes(null,null));
}
}
资源树及报表配置
在mis2\geeznmobile\config新建一个名为“customres.json”的文件,并在其中配置资源树的结构。JSON格式和节点说明如下:
将需要使用的报表放在移动服务器的报表目录下。该目录为:WEB-IF/globalReportConfig.xml中reportFileHome节点的配置
其它配置报表展现效果相关配置,例如:首页报表、报表背景色、自适应方式均可以在geeznMobileConfig.xml中进行设置。
访问报表
完成以上设置,将应用包部署到应用服务器下,启动应用。
修改服务器地址扫码页面http://IP:port/appName/mis2/geeznmobile/setup.jsp,设置服务器公网地址,后生成对应的二维码。
在手机上安装最新的app,启动后扫描上服务器上生成的二维码完成服务器地址设置。输入用户名(root),密码(123)点击登录,即可查看到资源目录信息。点击资源树中的报表,即可在手机端查看对应的报表数据。