Jxstar集成百度富媒体编辑器UEditor

回复

个性开发umakr 回复了问题 • 1 人关注 • 1 个回复 • 75 次浏览 • 2 天前 • 来自相关话题

配置sqlserver数据库xml,是怎么样的啊?

开发工具admin 回复了问题 • 2 人关注 • 1 个回复 • 78 次浏览 • 5 天前 • 来自相关话题

Jxstar Oracle 支持东南亚多语言数据库配置

个性开发admin 发表了文章 • 0 个评论 • 11 次浏览 • 5 天前 • 来自相关话题

      由于一项目需要支持录入东南亚多语言,支持语言类型包括:中文、英语、越南语、缅甸语、柬埔寨语,软件界面与部分主数据需要支持多语言,业务数据需要支持录入东南亚语言。数据库采用Oracle,则需要设置字符集为 UTF-8 ,这样保证存储数据不会乱码。同时避免之前数据库VARCHAR2字段类型长度不够,把数据库参数设置为 NLS_LENGTH_SEMANTICS = CHAR 。
 
数据库的处理方法如下:

1、先导出 exp 现在的 jxstar_cloud 数据库为dmp文件,然后创建一个新的用户 jxstar_cloud1 , 通过 imp 导入数据,
   然后执行下面的SQL,把查询出来的SQL在jxstar_cloud1中执行一次:
select 'alter table '||table_name||'  modify '||column_name||' '||data_type||'('||DATA_LENGTH||' CHAR);' 
from user_tab_cols where data_type like '%CHAR%' and table_name in (select table_name from user_tables) order by table_name, column_name
2、然后再 exp 导出 jxstar_cloud1 用户的数据为 dmp文件。
3、重新创建一个数据库实例,字符集设置为 UTF-8 ,创建实例时,初始参数 NLS_LENGTH_SEMANTICS 设置为 CHAR ,原来的默认为 BTYE 。
4、再导入 jxstar_cloud1 用户的 dmp 文件,这样能避免在 utf8 字符集环境中,部分varchar2类型数据超长。


  查看全部
      由于一项目需要支持录入东南亚多语言,支持语言类型包括:中文、英语、越南语、缅甸语、柬埔寨语,软件界面与部分主数据需要支持多语言,业务数据需要支持录入东南亚语言。数据库采用Oracle,则需要设置字符集为 UTF-8 ,这样保证存储数据不会乱码。同时避免之前数据库VARCHAR2字段类型长度不够,把数据库参数设置为 NLS_LENGTH_SEMANTICS = CHAR 。
 
数据库的处理方法如下:

1、先导出 exp 现在的 jxstar_cloud 数据库为dmp文件,然后创建一个新的用户 jxstar_cloud1 , 通过 imp 导入数据,
   然后执行下面的SQL,把查询出来的SQL在jxstar_cloud1中执行一次:
select 'alter table '||table_name||'  modify '||column_name||' '||data_type||'('||DATA_LENGTH||' CHAR);' 
from user_tab_cols where data_type like '%CHAR%' and table_name in (select table_name from user_tables) order by table_name, column_name
2、然后再 exp 导出 jxstar_cloud1 用户的数据为 dmp文件。
3、重新创建一个数据库实例,字符集设置为 UTF-8 ,创建实例时,初始参数 NLS_LENGTH_SEMANTICS 设置为 CHAR ,原来的默认为 BTYE 。
4、再导入 jxstar_cloud1 用户的 dmp 文件,这样能避免在 utf8 字符集环境中,部分varchar2类型数据超长。


 

Oracle数据库中保存 NVARCHAR2 类型数据乱码问题处理

个性开发admin 发表了文章 • 0 个评论 • 9 次浏览 • 6 天前 • 来自相关话题

Jxstar-Cloud 2.2.5 版本因需要保存 越南文,把相关字段改成 nvarchar2 类型后,直接在PLSQL工具执行SQL:
 
update funall_text set prop_value_t3 = N'Đã gửi thành công' where prop_key = 'oa-appcc.text2'
 
再查询此字段数据,数据显示正确。但在 Eclipse 环境或者 Tomcat 环境执行上面的SQL,保存的就是乱码,代码示列如下:
 
public static void test2() {
String sql = "update funall_text set prop_value_t3 = N'Đã gửi thành công' where prop_key = 'oa-appcc.text2'";
_log.showDebug("........sql="+sql);

DaoParam param = _dao.createParam(sql);
_dao.update(param);
}
Eclipse 环境中显示的提示信息都能正确显示,后来改进为预编译模式,执行正确:
public static void test2() {
String sql = "update funall_text set prop_value_t3 = ? where prop_key = 'oa-appcc.text2'";
_log.showDebug("........sql="+sql);

DaoParam param = _dao.createParam(sql);
param.addNStringValue("Đã gửi thành công");
_dao.update(param);
}
不过 Jxstar自带的 ojdbc5-1.0.jar 要升级到 ojdbc6-1.0.jar , commons-dbcp-1.3.jar 要升级到 commons-dbcp-1.4.jar 否则不支持 param.addNStringValue 方式传递参数。
 
以上问题解决花费 6个小时,看来还是老啦,解决问题的速度慢了很多!
 
由于业务数据也需要存储越南文,还包括缅甸文、高棉文等,则需要把数据库字符集类型改为 UTF-8,才行,否则所有 varchar2 类型都需要改为 nvarchar2 影响太大。
 
  查看全部
Jxstar-Cloud 2.2.5 版本因需要保存 越南文,把相关字段改成 nvarchar2 类型后,直接在PLSQL工具执行SQL:
 
update funall_text set prop_value_t3 = N'Đã gửi thành công' where prop_key = 'oa-appcc.text2'
 
再查询此字段数据,数据显示正确。但在 Eclipse 环境或者 Tomcat 环境执行上面的SQL,保存的就是乱码,代码示列如下:
 
	public static void test2() {
String sql = "update funall_text set prop_value_t3 = N'Đã gửi thành công' where prop_key = 'oa-appcc.text2'";
_log.showDebug("........sql="+sql);

DaoParam param = _dao.createParam(sql);
_dao.update(param);
}

Eclipse 环境中显示的提示信息都能正确显示,后来改进为预编译模式,执行正确:
	public static void test2() {
String sql = "update funall_text set prop_value_t3 = ? where prop_key = 'oa-appcc.text2'";
_log.showDebug("........sql="+sql);

DaoParam param = _dao.createParam(sql);
param.addNStringValue("Đã gửi thành công");
_dao.update(param);
}

不过 Jxstar自带的 ojdbc5-1.0.jar 要升级到 ojdbc6-1.0.jar , commons-dbcp-1.3.jar 要升级到 commons-dbcp-1.4.jar 否则不支持 param.addNStringValue 方式传递参数。
 
以上问题解决花费 6个小时,看来还是老啦,解决问题的速度慢了很多!
 
由于业务数据也需要存储越南文,还包括缅甸文、高棉文等,则需要把数据库字符集类型改为 UTF-8,才行,否则所有 varchar2 类型都需要改为 nvarchar2 影响太大。
 
 

Weblogic环境部署Jxstar程序,更新js文件后无效

开发工具admin 发表了文章 • 0 个评论 • 11 次浏览 • 6 天前 • 来自相关话题

 
weblogic 应用 eampro 的部署路径为:
D:\oracle\Middleware\user_projects\domains\base_domain\servers\eamserver2\stage\eampro\eampro但集群系统主节点应用域名为 bfda_domain ,而当前节点的应用域名为 base_domain ,造成js文件上传到上面的路径后,应用还是加载不到最新的js文件。
 
报如下错误信息:<2018-8-10 下午08时27分25秒 CST> <Error> <HTTP> <BEA-101019> <[ServletContext@48246386[app:eampro module:eampro path: spec-version:2.5]] Servlet failed with IOException
java.io.IOException: failed to read '22' bytes from InputStream; clen: 6439 remaining: 22 count: 6417
at weblogic.servlet.internal.ChunkOutput.writeStream(ChunkOutput.java:466)
at weblogic.servlet.internal.CharsetChunkOutput.writeStream(CharsetChunkOutput.java:221)
at weblogic.servlet.internal.ChunkOutputWrapper.writeStream(ChunkOutputWrapper.java:192)
at weblogic.servlet.internal.ServletOutputStreamImpl.writeStream(ServletOutputStreamImpl.java:555)
at weblogic.servlet.internal.ServletOutputStreamImpl.writeStream(ServletOutputStreamImpl.java:544)
Truncated. see log file for complete stacktrace
解决方案:
添加 WEB-INF\weblogic.xml 文件,内容如下:<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE weblogic-web-app
PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN"
"http://www.bea.com/servers/wls ... gt%3B
<weblogic-web-app>
<jsp-descriptor>
<page-check-seconds>0</page-check-seconds>
</jsp-descriptor>
<container-descriptor>
<resource-reload-check-secs>0</resource-reload-check-secs>
</container-descriptor>
</weblogic-web-app>
如果要实现 contextpath 为 / 则需要在上面的文件添加一行 
<context-root></context-root>
  查看全部
 
weblogic 应用 eampro 的部署路径为:
D:\oracle\Middleware\user_projects\domains\base_domain\servers\eamserver2\stage\eampro\eampro
但集群系统主节点应用域名为 bfda_domain ,而当前节点的应用域名为 base_domain ,造成js文件上传到上面的路径后,应用还是加载不到最新的js文件。
 
报如下错误信息:
<2018-8-10 下午08时27分25秒 CST> <Error> <HTTP> <BEA-101019> <[ServletContext@48246386[app:eampro module:eampro path: spec-version:2.5]] Servlet failed with IOException
java.io.IOException: failed to read '22' bytes from InputStream; clen: 6439 remaining: 22 count: 6417
at weblogic.servlet.internal.ChunkOutput.writeStream(ChunkOutput.java:466)
at weblogic.servlet.internal.CharsetChunkOutput.writeStream(CharsetChunkOutput.java:221)
at weblogic.servlet.internal.ChunkOutputWrapper.writeStream(ChunkOutputWrapper.java:192)
at weblogic.servlet.internal.ServletOutputStreamImpl.writeStream(ServletOutputStreamImpl.java:555)
at weblogic.servlet.internal.ServletOutputStreamImpl.writeStream(ServletOutputStreamImpl.java:544)
Truncated. see log file for complete stacktrace

解决方案:
添加 WEB-INF\weblogic.xml 文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE weblogic-web-app
PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN"
"http://www.bea.com/servers/wls ... gt%3B
<weblogic-web-app>
<jsp-descriptor>
<page-check-seconds>0</page-check-seconds>
</jsp-descriptor>
<container-descriptor>
<resource-reload-check-secs>0</resource-reload-check-secs>
</container-descriptor>
</weblogic-web-app>

如果要实现 contextpath 为 / 则需要在上面的文件添加一行 
<context-root></context-root>
 

Jxstar 部署CXF的webservice服务端,报错 jar不一致

个性开发admin 发表了文章 • 0 个评论 • 15 次浏览 • 2018-08-09 16:37 • 来自相关话题

如果是JDK1.6版本,则需要在tomcat目录中添加endorsed目录,把jaxb-api-2.2.3.jar、jaxb-impl-2.2.4-1.jar拷贝到此目录,否则会报错tomcat不能加载应用。
Weblogic、WebSphere中部署也存在这类错误,需要拷贝两个jar文件到JDK的安装目录中。如:/jdk1.6.0_45/jre/lib/ 中添加\endorsed 目录,把前两个jar放到此目录中。
如果是其他JDK版本需要确定 jaxb 的版本号。两个jar文件在附件中。 查看全部
如果是JDK1.6版本,则需要在tomcat目录中添加endorsed目录,把jaxb-api-2.2.3.jar、jaxb-impl-2.2.4-1.jar拷贝到此目录,否则会报错tomcat不能加载应用。
Weblogic、WebSphere中部署也存在这类错误,需要拷贝两个jar文件到JDK的安装目录中。如:/jdk1.6.0_45/jre/lib/ 中添加\endorsed 目录,把前两个jar放到此目录中。
如果是其他JDK版本需要确定 jaxb 的版本号。两个jar文件在附件中。

Jxstar 数据导入事件执行前与执行后的扩展方法 dataimp

个性开发admin 发表了文章 • 0 个评论 • 43 次浏览 • 2018-06-27 10:06 • 来自相关话题

可以在 dataimp 事件的类设置中,设置如下的类:
/*
* Copyright(c) 2017 DongHong Inc.
*/
package com.jxstar.demo.eam;

import java.util.List;
import java.util.Map;

import org.jxstar.control.action.RequestContext;
import org.jxstar.service.BusinessObject;
import org.jxstar.util.ArrayUtil;
import org.jxstar.util.JsonUtil;

/**
* 数据导入扩展测试类。
* 注册在数据导入事件“dataimp”的类设置中。
*
* @author TonyTan
* @version 1.0, 2017-6-10
*/
public class DataImpExtBO extends BusinessObject {
private static final long serialVersionUID = 1L;

/**
* 导入前的判断
* @param request
* @return
*/
public String preImp(RequestContext request) {
String srcFunId = request.getFunID();
//目标功能ID
String destFunId = request.getRequestValue("destfunid");
//其他参数有: keyid 选择记录主键数组、parentId 父记录ID
String[] keyids = request.getRequestValues("keyid");
String forKeyId = request.getRequestValue("parentId");

_log.showDebug("..............导入前事情,相关参数:");
_log.showDebug("..............来源功能ID:"+srcFunId);
_log.showDebug("..............目标功能ID:"+destFunId);
_log.showDebug("..............选择记录主键:"+ArrayUtil.arrayToString(keyids));
_log.showDebug("..............目标功能外键:"+forKeyId);

//判断示列效果
if (keyids.length > 2) {
setMessage("不能同时选择2条以上记录导入!");
return _returnFaild;
}

return _returnSuccess;
}

/**
* 导入后的扩展
* @param request
* @return
*/
public String postImp(RequestContext request) {
//格式如:[{impKeyId:"xxxx", newKeyId:"xxxx"}, {impKeyId:"xxxx", newKeyId:"xxxx"}]
String json = request.getReturnData();
_log.showDebug("..............新建主键对照:"+json);

List<Map<String,String>> lsData = JsonUtil.json2list(json);
_log.showDebug("..............解析后的数据:"+lsData);

return _returnSuccess;
}
} 查看全部
可以在 dataimp 事件的类设置中,设置如下的类:
/*
* Copyright(c) 2017 DongHong Inc.
*/
package com.jxstar.demo.eam;

import java.util.List;
import java.util.Map;

import org.jxstar.control.action.RequestContext;
import org.jxstar.service.BusinessObject;
import org.jxstar.util.ArrayUtil;
import org.jxstar.util.JsonUtil;

/**
* 数据导入扩展测试类。
* 注册在数据导入事件“dataimp”的类设置中。
*
* @author TonyTan
* @version 1.0, 2017-6-10
*/
public class DataImpExtBO extends BusinessObject {
private static final long serialVersionUID = 1L;

/**
* 导入前的判断
* @param request
* @return
*/
public String preImp(RequestContext request) {
String srcFunId = request.getFunID();
//目标功能ID
String destFunId = request.getRequestValue("destfunid");
//其他参数有: keyid 选择记录主键数组、parentId 父记录ID
String[] keyids = request.getRequestValues("keyid");
String forKeyId = request.getRequestValue("parentId");

_log.showDebug("..............导入前事情,相关参数:");
_log.showDebug("..............来源功能ID:"+srcFunId);
_log.showDebug("..............目标功能ID:"+destFunId);
_log.showDebug("..............选择记录主键:"+ArrayUtil.arrayToString(keyids));
_log.showDebug("..............目标功能外键:"+forKeyId);

//判断示列效果
if (keyids.length > 2) {
setMessage("不能同时选择2条以上记录导入!");
return _returnFaild;
}

return _returnSuccess;
}

/**
* 导入后的扩展
* @param request
* @return
*/
public String postImp(RequestContext request) {
//格式如:[{impKeyId:"xxxx", newKeyId:"xxxx"}, {impKeyId:"xxxx", newKeyId:"xxxx"}]
String json = request.getReturnData();
_log.showDebug("..............新建主键对照:"+json);

List<Map<String,String>> lsData = JsonUtil.json2list(json);
_log.showDebug("..............解析后的数据:"+lsData);

return _returnSuccess;
}
}

mui在android5中,webview网页中的input没法聚焦的问题

移动开发admin 发表了文章 • 0 个评论 • 36 次浏览 • 2018-06-26 11:37 • 来自相关话题

通过下面方法可以解决:var ws = plus.android.currentWebview();
plus.android.invoke(ws, "requestFocus");
document.getElementById("device_code").focus();
 
或者更安全的方法:function plusReady(){
var ws = plus.android.currentWebview();
plus.android.invoke(ws, "requestFocus");
setTimeout(function(){
document.getElementById("device_code").focus();
}, 500);
}
if(window.plus){
plusReady();
}else{
document.addEventListener('plusready', plusReady, false);
} 查看全部
通过下面方法可以解决:
var ws = plus.android.currentWebview();
plus.android.invoke(ws, "requestFocus");
document.getElementById("device_code").focus();

 
或者更安全的方法:
function plusReady(){
var ws = plus.android.currentWebview();
plus.android.invoke(ws, "requestFocus");
setTimeout(function(){
document.getElementById("device_code").focus();
}, 500);
}
if(window.plus){
plusReady();
}else{
document.addEventListener('plusready', plusReady, false);
}

配置表格列显示平均值

开发工具admin 发表了文章 • 0 个评论 • 73 次浏览 • 2018-06-15 09:32 • 来自相关话题

需要显示平均值的表格字段列需要勾选“统计”,然后INC中需要添加需要算平均列的字段名称,格式如下:
 
config.param.average_fields = ['store_indet__in_num','store_mat__mat_price','store_indet__in_money'];
 
效果如下:
 





 
如果没有效果就需要更新最新的文件:public\core\JxSum.js
  查看全部
需要显示平均值的表格字段列需要勾选“统计”,然后INC中需要添加需要算平均列的字段名称,格式如下:
 
config.param.average_fields = ['store_indet__in_num','store_mat__mat_price','store_indet__in_money'];
 
效果如下:
 

a.png

 
如果没有效果就需要更新最新的文件:public\core\JxSum.js
 

mui.alert在长html时显示位置不对

回复

移动开发admin 回复了问题 • 1 人关注 • 1 个回复 • 59 次浏览 • 2018-06-13 11:03 • 来自相关话题