分享

CloudFoundry的使用经验总结

本帖最后由 bioger_hit 于 2014-1-11 02:01 编辑

第一次部署kFeedback:

按照文档进行操作,一切看上去是那么的顺利,可是在启动服务的时候却提示不成功——第一次部署失败;

通过分析发现,数据源配置信息有误,通过文档了解,CF是可以自动配置的(http://cndocs.cloudfoundry.com/frameworks/java/spring/spring.html

我的怎么不行,后来继续查阅文档,找到了成功的办法:

数据源的连接信息可通过VCAP_SERVICES 环境变量获得;

于是,我启动了CF服务,做了一个jsp来获取VCAP_SERVICES 环境变量信息;

jsp内容如下:
1.png
部署这个jsp并访问,得到了如下信息:

我在云端;

我的环境变量信息:

2.png

有用的信息主要是credentials里边的内容:

name为数据库名;

hostname和host为数据库连接串的ip;

port没啥说的了,端口;

name和username是连接数据库的用户名;

password是连接数据库的密码;

了解JDBC的已经明白了,这些信息已经足够了;

配置数据源信息,重新部署,一切ok;



继续点击进行操作,哎?怎么都是乱码,我使用的全是UTF8啊,不可能出现乱码啊;

然后部署在本机测试,一切ok,我当时很纳闷,又开始翻文档,没啥可借鉴的信息;

于是采用了调试跟踪大法,步步进行输出,看看是哪个环节出现了编码转换错误;

首先是在jsp中alert信息,ok,中文没问题;

然后再servlet中out信息,乱码,原来在这里,我此时想的是为什么本地好使,放在云上就不好使了呢;



我的servlet关于编码的代码片段:

in doPost:
3.png



我所有的请求进来,都走doPost,进入doPost的第一件事情,就是编码(以前都是用filter);

最终根据经验判断,估计是对信息做了两次UTF8转换,导致乱码出现;会不会CF已经对所有请求和响应都做了UTF8编码?

我这样岂不是又做了一遍,所以果断注释掉,重新部署,ok,乱码消失;



kFeedback开发、部署过程中主要碰到了以上两个问题,应该是属于初级问题,

但相信也会有不少朋友会遇到,所以把这个过程写出来与大家分享,让大家少走弯路;


没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条