1.Failed to set property: vbillstatus at bean……
vbillstatus参数类型错误,在主子表开发中,元数据中的“单据状态”的数据库映射字段必须为int类型,不能是varchar(虽然在VO中这个字段是String),否则会报这个错误。
2.No bean named ‘childrenPicky’ is defined
主子表单据,注册表体编辑事件,需要定义childrenPicky:
<bean id="childrenPicky" class="nc.ui.pubapp.uif2app.event.ChildrenPicky">
<property name="billform" ref="billForm" />
<property name="bodyVoClasses">
<list>
<value>nc.vo.test.zsalesorder.ZSalesOrderChildVO</value>
<value>nc.vo.test.zsalesorder.ZSalesOrderParentVO</value>
</list>
</property>
</bean>
3.Failed to set property: nmny at bean: nc.vo.test.zsalesorder.ZSalesOrderChildVO with value:0.000 type:nc.vo.pub.lang.UFDouble
代码里UFDouble,数据库里decimal(number),明明哪里都没问题,偏偏就报错了……经过一个晚上加一个早上的试验,终于发现解决方案:勾选主表和子表的动态属性,之后完美解决(无语了)。
4.按钮扩展的问题
教程中注册xml文件时总会报各种错,折腾了一天总算是找到办法了,看注释。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- 插入按钮配置 -->
<bean class="nc.ui.pubapp.plugin.action.InsertActionInfo">
<property name="action" ref="AddTestAction" /><!-- 动作 -->
<property name="target" ref="addAction" /><!-- 参考按钮id -->
<property name="pos" value="after" /><!-- 位置 -->
<property name="actionContainer" ref="container" /><!-- 修改为 参考xml的界面布局总装id-->
<property name="actionType" value="notedit" /><!-- 动作类型 -->
</bean>
<!-- 测试 按钮 -->
<bean id="AddTestAction" class="nc.ui.test.zcust.ace.handler.AddTestAction">
<!-- <property name="model" ref="manageAppModel" /> --><!-- 这个直接去掉 -->
<property name="editor" ref="billForm" /><!-- 修改参考xml的editor -->
<property name="code" value="addTest" />
</bean>
</beans>
5.写接口部署EJB,找不到放进去的EJB
导出补丁时除了教程里面的四个文件,还需要导出model.xml,否则看不到自己的ejb。另外,upm文件需要自己创建,而且还要添加一些东西(参考别人的文件)
6.http://127.0.0.1:8888/uapws/service无法访问
开发环境没配置启动参数 -Duap.hotwebs=uapws,右键,调试方式,调试配置,自变量VM自变量,后面添加即可。
7.运行startup.bat/sh后启动界面卡在“start servers with domain configuraion
sysConfig中服务器ip配置的问题,修改为自己的ip即可。如果服务器配置是集群服务器,那就修改为单服务器。
8.使用UAP启动项目如何修改默认端口
首先修改UAP首选项→UAP集成开发环境→开发配置→客户端连接中的端口,如若还不行,就修改home/bin/sysConfig.bat中的服务器名称,将其改为server,然后再设置下方的端口,再使用UAP启动项目,就是想要的端口了。
9.操作数据库时如何使用参数
InSQLCreator isc = null;
try{
isc = new InSQLCreator();
String inSQL = isc.getInSQL(pk_psndocs);
SQLParameter para = new SQLParameter();
para.addParam(pk_org);
para.addParam(beginDate);
para.addParam(endDate);
new BaseDAO().executeUpdate("delete from "+SignRegVO.getDefaultTableName()+" where "+
IBaseServiceConst.PK_ORG_FIELD+"=? and "+SignRegVO.PK_PSNDOC+" in ("+inSQL+") and "+SignRegVO.SIGNDATE+" between ? and ?" ,para);
}