最近的项目是由一些不同的软件相互协作组成的(是的,就是说这个系统有很多部分)。
各软件之间发信通过socket实现。
在系统联调的时候,很可能会发现bug。
而为了再现这个bug,我们就必须要将系统的其他部分完整的搭建起来。
这样一来有几个问题。
1. 完整的搭建这个环境比较困难。需要多台机器。
2. 完整的在线bug手顺比较麻烦,影响工作效率。
3. 环境中有些资源是受限的,比如我们手头的环境只能同时供一个人使用,
这样在真实的环境中,就没有办法多人同时调查一个问题。
也就是这些原因,我们要做一个工具,能够往东西南北中,系统的每一个角落狂发各种socket报文。
GUI拿netbeans做。但是当我要创建一个Socket的时候,抛出了下面的异常。
(是的,helloworld中怎么创建怎么成功,在这个gui中怎么创建怎么不成功)
malformed这个单词是难看的,畸形的,我的第一反应是这个异常信息可真难看,真畸形。
google了一下,发现了这里:
jdbc数据库连接失败 Malformed reply from SOCKS server
Java Database Connectivity (JDBC) - JDBC Microsoft SQL Problem
原来netbeans的GUI框架,为我设置了代理,
当使用公司的代理去连接区域网内的一个ip时,自然出了错,上面的jdbc错误也是一样。
解决方法有两个(都是找到相应的函数,加入一行相应的代码):
方法一
public void main(String[] args) { ProxySelector.getDefault(); // code }
方法二
@Override protected void startup() { invoke System.setProperty("java.net.useSystemProxies", "false"); // code }
故事讲完了,虽然我被netbeans给伤害了,但是我还是坚强的认为netbeans很人性化。
另外,在我使用完成之后,我也更加的坚强的认为netbeans在开发java gui方面强大的一塌糊涂(以前只是听说,还有看了sun的一些视频,包括很酷的数据源绑定等等)。
目前我认为netbeans的GUI开发,比Eclipse的ve好,有些地方我甚至认为超过了vs2008.
当然其中最吸引我的一点是,他可以单独编辑JPanel。
是的,我在一个JFrame中可以放置很多个JPanel,而我可以针对每个JPanel单独编辑。
而不必受其他空间的干扰。