文档库

最新最全的文档下载
当前位置:文档库 > 多种NC问题及解决办法

多种NC问题及解决办法

一、内存溢出

(1)重启eclipse

(2)或者看看设置下参数,(-Xms256M -Xmx512M -XX:PermSize=256M -XX:MaxPermSize=256M), nchome里bin/ncSysConfig

eclipse-窗口-首选项-已安装的jre-编辑jre-缺省vm参数

项目点右键-调试方式-调试-自变量-vm自变量

二、所有信息就都输出到控制台

(1)把sql日至都打出来,NC_HOME/ierp/bin/logger-config.properties 名字改下,

这样所有信息就都输出到控制台,

你点击按钮后,看看后台输出的sql,就是到都更新了哪些表了

(2)修改

D:\ufsoft\ufnc502\ierp\bin\logger-config.properties

anonymous.level=ERROR

anonymous.pattern=[%t] %X{remoteAddr} %X{remotePort} %d{yyyy/MM/dd HH:mm:ss} [%A] %p - %m %n

anonymous.file=./nclogs/${server}/anony-log.log

anonymous.size.maxSize=5MB

anonymous.size.maxIndex=20

修改为

anonymous.level=TRACE

anonymous.pattern=[%t] %X{remoteAddr} %X{remotePort} %d{yyyy/MM/dd HH:mm:ss} [%A] %p - %m %n

三、寻找错误

有错了先点清理控制台,再触发错误的事件,再从控制台的server端寻找错误

四、配置文件路径

nchome\ierp\bin\prop.xml

五、帐套管理路径

nchome\ierp\bin\account.xml

五、模块注册错乱

用集团登陆,在二次开发工具-系统管理工具-自定义菜单--恢复默认结构

在二次开发工具-系统管理工具-自定义菜单可以自定义结构

六、打断点时候有时候截出的信息过多,有省略

用System.out.print(信息)

七、中间启动不起来

(1)去掉hr开头的模块

(2)换个ufjdk

八、直接起nchome显示4行就不在继续

server的IP改成127.0.0.1

九、获得nchome所在文件夹

RuntimeEnv.getInstance().getNCHome()

十、读取nc服务器信息的

String url

="http://"+InvocationInfoProxy.getInstance().getServerHost()+":"+InvocationInfoProxy.g etInstance().getServerPort();

十一、javax.swing.JPanel 的 main() 中发生异常

http://www.wendangku.net/doc/5bbd50c90b4c2e3f562763a7.htmlng.NoClassDefFoundError: netscape/javascript/JSObject

at http://www.wendangku.net/doc/5bbd50c90b4c2e3f562763a7.htmlng.Class.forName0(Native Method)

at http://www.wendangku.net/doc/5bbd50c90b4c2e3f562763a7.htmlng.Class.forName(Class.java:164)

at nc.starter.test.JStarter.StartNC(JStarter.java:111)

at nc.starter.test.JStarter.main(JStarter.java:373)

没有导入plugin 的jar包

十二、http://www.wendangku.net/doc/5bbd50c90b4c2e3f562763a7.htmlponentNotFoundException: Component:

nc.itf.pd.inner.IPubFreeze,Detail Message:

Can not find component(both in jndi and ESA)

EJB问题,删掉EJB临时文件,重启中间键

object is not an instance of declaring class

也有可能是接口、实现方法没有定义,定义后重新部署

十三、java中的各种路径

public static void main(String[] args){

System.out.println(new File("column2.txt").getAbsolutePath());//文件路径

System.out.println("Java运行时环境版本:\n"+System.getProperty("java.version")); System.out.println("Java 运行时环境供应

商:\n"+System.getProperty("java.vendor"));

System.out.println("Java 供应商的URL:\n"+System.getProperty("java.vendor.url")); System.out.println("Java安装目录:\n"+System.getProperty("java.home"));

System.out.println("Java 虚拟机规范版

本:\n"+System.getProperty("java.vm.specification.version"));

System.out.println("Java 类格式版本

号:\n"+System.getProperty("java.class.version"));

System.out.println("Java类路径:\n"+System.getProperty("java.class.path"));

System.out.println("加载库时搜索的路径列

表:\n"+System.getProperty("java.library.path"));

System.out.println("默认的临时文件路

径:\n"+System.getProperty("java.io.tmpdir"));

System.out.println("要使用的 JIT 编译器的名

称:\n"+System.getProperty("http://www.wendangku.net/doc/5bbd50c90b4c2e3f562763a7.htmlpiler"));

System.out.println("一个或多个扩展目录的路

径:\n"+System.getProperty("java.ext.dirs"));

System.out.println("操作系统的名称:\n"+System.getProperty("http://www.wendangku.net/doc/5bbd50c90b4c2e3f562763a7.html"));

System.out.println("操作系统的架构:\n"+System.getProperty("os.arch"));

System.out.println("操作系统的版本:\n"+System.getProperty("os.version"));

System.out.println("文件分隔符(在 UNIX 系统中是

“/”):\n"+System.getProperty("file.separator"));

System.out.println("路径分隔符(在 UNIX 系统中是

“:”):\n"+System.getProperty("path.separator"));

System.out.println("行分隔符(在 UNIX 系统中是

“/n”):\n"+System.getProperty("line.separator"));

System.out.println("用户的账户名称:\n"+System.getProperty("http://www.wendangku.net/doc/5bbd50c90b4c2e3f562763a7.html"));

System.out.println("用户的主目录:\n"+System.getProperty("user.home"));

System.out.println("用户的当前工作目录:\n"+System.getProperty("user.dir")); }

十四、端口号

/**

nchome55\conf

文件夹下

server.xml文件

搜索

Define a non-SSL HTTP/1.1 Connector

下面就是那个端口

*/

十六、表体树排序出错

表体树不支持排序,禁用表体排序,在initSelfData()调用getBillCardPanel().getBillTable(表编码).setSortXXX(false),注意相应的列表界面也要禁止排序

十七、访问受限

配置访问规则--编辑--添加--分辨率改为可访问,规则模式写**--确定

十八、http://www.wendangku.net/doc/5bbd50c90b4c2e3f562763a7.htmlng.ClassNotFoundException和http://www.wendangku.net/doc/5bbd50c90b4c2e3f562763a7.htmlng.NoClassDefFoundError的区别这2个东西应该是java里很常见,很简单,他们都和classpath设定有关,但区别在哪里呢?我们都知道java里生成对象有如下两种方式:

1:Object obj = new ClassName(); 直接new一个对象

2:Class clazz = Class.forName(ClassName);

Object obj = clazz.newInstance(); 通过class loader动态装载一个类,然后获取这个类的实例

同样是生成对象,1在编译期间检查classpath, 如果没有类定义,编译没法通过。而2在编译期间是不会检查的,不过需要抛出或者自己catch ClassNotFoundException。运行期间,如果1编译时依赖的类不在classpath中(导致classloader装载失败),此时抛出的异常就是NoClassDefFoundError。而如果2在运行期间需要装载的类不在classpath中,抛出的则是ClassNotFoundException。

十九、开发环境下界面出现乱码

原因:eclipse没有添加资源id。

把workspace工作环境下的代码删掉,重新建项目。

二十一、出现空按钮

原因:ncsso本身在uap里面,可能会被误移动出来。

解决:将nchome里的ncsso的模块,删掉。

二十二、Oracle 一个表字段,更新另一个表字段报 not null

在Oracle中通过一个表字段更新另一个表字段,有时更新不进去,报不能为空,

具体原因没有去深究,但是可以通过建立一个中间列来解决此问题;

如:

表A:字段id,code ,name

表B:字段b1,b2,b3

更新表A的id字段为表B的b1字段,条件是A.id=B.b3;

这样的话,这个id既是更新字段又是条件字段,这时候,就需要一个中间列;

update tb_role_user set mm=(select mm1 from mmtes333 where trim(userid)=trim(mm3)) update tb_role_user set userid=mm where mm is not null

二十三、操作用户已达到最大授权数

bin下的license1和lib下的uf删掉