设为首页 收藏本站
查看: 792|回复: 0

[经验分享] 使SHOP++支持 JDK1.5、Websphere 、Oracle

[复制链接]

尚未签到

发表于 2016-7-22 10:11:45 | 显示全部楼层 |阅读模式
  使SHOP++支持JDK1.5、Websphere 、Oracle
  SHOP++作品极其优秀。
代码、架构、模式、模型如同界面一样清爽优雅。

JDK1.5

1。package net.shopxx.common;
Initializing类afterPropertiesSet方法
去掉@Overwrite

2。增加依赖包activation.jar

调试过程中。
在myeclipse调试用注意将Java Compiler降为1.5。
在windows->preferrences中将meclipse->servers->tomcat的jdk降为1.5。

Websphere
1.类似SystemConfigUtil中获取文件的方式在Websphere 会有问题:
String configFilePath = Thread.currentThread().getContextClassLoader().getResource("").toURI().getPath() + CONFIG_FILE_NAME;
修改成如下后,暂时在tomcat\websphere下正常
InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream("shop.xml");

2.耽误时间较长的是:webshpere获取购物车cookie时,不支持解析带有 逗 号的cookie,在CartItemAction中增加了一个方法
  复制代码

  • private Cookie[] getCookie() {
  • Cookie[] cookie = null;
  • // String ss =
  • // "[testName='2,3'; testName2='[{'i':'4028488c2ce98f61012ce99126ec0001','q':1}]'; cartItemList='[{'i':'4028488c2ce9da61012ce9dbd3700001','q':1},{'i':'8a925d662cee2a9f012cee3f95430002','q':1}]\',\'q\':1}]'; JSESSIONID=52C7675E1DAE5464A8A2A8CC14C4D384]";
  • String cookieString = getRequest().getHeader("Cookie");
  • if(cookieString!=null&&cookieString.trim().length()>0){
  • int cIndex = cookieString.indexOf("cartItemList");
  • int eIndex = cookieString.indexOf(";", cIndex);
  • if (cIndex >= 0 ) {
  • String cartItemListvalue = null;
  • if(eIndex==-1){
  • cartItemListvalue = cookieString.substring(cIndex
  • + "cartItemList='".length(), cookieString.length()-1);
  • }else{
  • cartItemListvalue = cookieString.substring(cIndex
  • + "cartItemList='".length(), eIndex - 1);
  • }

  • log.debug("cartItemListvalue:["+cartItemListvalue+"]");
  • if (cartItemListvalue != null
  • && cartItemListvalue.trim().length() > 0) {
  • //cartItemListvalue = "{'i':'4028488c2ce9da61012ce9dbd3700001','q':1}";
  • if(!cartItemListvalue.startsWith("[")){
  • cartItemListvalue="["+cartItemListvalue+"]";
  • }
  • Cookie c = new Cookie("cartItemList", cartItemListvalue);
  • cookie = new Cookie[1];
  • cookie[0] = c;
  • } else {
  • cookie = new Cookie[0];
  • }
  • } else {
  • cookie = new Cookie[0];
  • }
  • }else{
  • cookie = new Cookie[0];
  • }
  • return cookie;
  • }
  

Oracle
使用SQLDeveloper2.x进行数据转换(3.x还不稳定)
修改几个默认的数据转换类型,主要为:


  复制代码

  • Bit[1]->Number[1,0]
  • Double->float
  • Date->timestamp
  

更改applicationContext配置,使得支持CLOB。
转换后的resouce表和oracle冲突,会被自动调整为resource_
以及Product对应的getProductAttributeMapStore表太长,被自动缩减表名
适当修改之。

另外,可适当修改SHOP++无需网页自动刷新,也非常简单,对于性能要求不高的小型应用足够了,还能省去管理员的工作量。
  
  另外一个界面小BUG,那么多人用购物车不觉得奇怪吗?怎么没有商品名呢?,呵呵


${list.product.name}

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-247716-1-1.html 上篇帖子: oracle中rowid和rownum简介 下篇帖子: ORACLE SEQUENCE的简单介绍(转)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表