此次使用的版本是53,在52上面发现的。
eos提供一种做法,是!=等同于<> .这个在设置线上条件的时候经常碰到。

但是在查询的时候,这个就不会等同了。
我对EOSORG_T_Employee这个系统自带的表格使用查询生成向导。
<input type="hidden" name="EOSORG_T_Employee/orgID/criteria/operator" value="<>">
<input type="hidden" name="EOSORG_T_Employee/orgID/criteria/operator" value="<>">
出来的效果和使用
<input type="hidden" name="EOSORG_T_Employee/orgID/criteria/operator" value="!=">
完全不同,使用<> or <>,就和没有使用是一个效果。
为什么呢?理论上来说应该是一样的才是。
这是个问题。
事务很容易产生bug。这是一个问题。
在广州的时候,出现的bug是集群的事务不同步,而这次在佛山出现的bug,是多数据源的问题。先说一下整体的情况。
OA系统,用到我们EOS作为整体框架,websphere5+db2 8.2 + EOS ,eos的版本号为52。用到了多数据源。
理论上来说,一个事务操作一个连接,所以在整个事务中间,如果需要用到另外一个连接,自然会报错。
比如在广州的时候,一个bizlet用到这段代码:
ProcessCaller pc = new ProcessCaller("common", "0", "-1","defaultAppID")
看上去,只是new 一个 ProcessCaller,没什么大不了的。但是实际上,请跟踪他的连接,会发现,他自己会new一个连接。如果这个时候你用调用该bizlet的事务里面的数据,当然,会拿不到里面的数据了。
而这次出现的问题是:
一个prP的事务里面,调用一个biz,bizA的数据源设定是A数据源,而biz里面的biz bizB里面,设定的是B数据源。这样有一个层次的关系。
prP事务>bizA>bizB
当prP事务调起bizA的时候,根据bizA的配置,默认的拿到A数据源,所以这个时候,增个事务是针对A数据源的,而在bizB里面,需要操作是拿到B的数据源,对B数据源对应的表进行操作。由于之前事务已经有一个数据源,这个时候,B数据源在该事务中是拿不到的,所以就会把错误抛出。
很明显,这个错误很正常,如果用到spring的事务,也应该会遇到这个问题。本来逻辑上,这样就是说不过去的。
该怎么解决?
update:
最后的解决方案,在bizB的里面,再次封装一次,封装的biz的属性里面获取另外一个连接的数据源,这样就可以了。对于 如果用到spring的事务,也应该会遇到这个问题。 这句话,可能是有问题的,嘿嘿,chengzhi说,XA的数据源是能满足这个要求的。
,小子无知,大胆猜测。
在一张网页中,使用如下script.
<script>
function popup(href){
var winStyle="left=0,top=0,width=800,height=600,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes";
var remote = window.open( href,"",winStyle);
}
</script>
在<td>连接地址</td>来在新窗口打开一个连接.原来网页上有gif文件.
这样的话,回到原来的网页,gif的动画就sb了,不动了.
那么如何解决这个问题呢?
方案:用span这个便签,给他设定onclick的事件,调用这个function popup。
<span class="STYLE1" onclick ="javascript:popup('http://www.sina.com');">这是一个测试的语句。
貌似能解决上面的问题!