2007年5月26日星期六

邪恶的《邪恶力量》

最近,编程的心思被这个“邪恶的” 《邪恶力量》 拿走了~

最近,开始在 PPStream上看这个 恐怖 的 灵异的 XX剧

今天,继续研究 Web Service的问题

发现,可以直接用2005 生成的 XML 提取 类名, 然后将这个用这个名字来解决

2007年5月25日星期五

该死的异常

本来,我想通过Web Services 来传递异常返回到客户端
但这个东西都被截断了,在客户端有重组成SoapException
即使是继承SoapException 的也不好使

所以不能通过像平常用 Try 方法了
唉,郁闷啊 ~~~

2007年5月24日星期四

关于 使用 WSE 3.0 开启MTOM 后,产生HTTP 415 错误的解决方法

    这个文档使用 Google文件发布,如有浏览问题,请浏览http://docs.google.com/Doc?id=dggdkn6_17cthdx3

    最近,在写程序的时候为了大数据传输,而使用的WSE 但使用之后,在客户端调用出现一下问题

    请求因 HTTP 状态 415 失败: Unsupported Media Type。

    如果,你是先配置好服务器后,在VS中直接就用添加Web Services了,然后就出问题了,那么下面告诉你解决方法

    其实,我们都丢了一步, 直接使用VS生成的代理,没有启动 WSE功能,更没有 MTOM,所以报错了

    创建支持WSE代理很简单,

    打开客户端程序,使用 WSE 配置工具,打开配置文件(App.config),选上Enable this project for Web Services Enhancements

    (不知道直接在VS里右键单击工程,选择 WSE Settings 3.0 会不会自动添加 Microsoft.web.services3,我这里是装完VS SP1后才按的WSE,所以,没有这个东西)

    之后,在向项目里面添加Web服务的引用,系统会自动生成2个代理类

    Public Class Service1

    Inherits System.Web.Services.Protocols.SoapHttpClient ---->VS默认生成的

    Public Class Service1Wse

    Inherits Microsoft.Web.Services3.WebServicesClientProtocol ——>> 支持 WSE

    但是,如果要这么使用,还会有问题

    还需要使用WSE配置工具,打开客户端的配置文件,在 Messaging 选项卡下 Client Mode 设成 On

    这样就可以使用了

    如果数据很大(>4M 那么还需要 更改 配置文件,加上<maxMessageLength value="-1" />

    <microsoft.web.services3>

    <messaging>

    <maxMessageLength value="-1" />

    <mtom serverMode="optional" clientMode="On" />

    </messaging>

    </microsoft.web.services3>


    下面,说说Web 服务的配置

    VS里打开Web Services,右键单击工程,选择WSE Settings 3.0 ,启动WSE配置工具 ,(好像安装完VS SP1之后,这个东西就不会被装上),在General 选项卡里的 2 enable 选上

    之后在Messaging 选项卡,开启 Server Mode optional always

    optional 不管请求是否使用MTOM,都是用MTOM响应

    always 请求和响应 都是MTOM

    之后,OK,就可以了

    这个过程主要在 Web.config中产生

    <microsoft.web.services3>

    <messaging>

    <mtom serverMode="optional" clientMode="On" />

    </messaging>

    </microsoft.web.services3>

    如果传输数据大于4M那么就需要更改HTTP Runtime 设置 默认设置

    <system.web>

    <httpRuntime maxRequestLength="409600" executionTimeout="300" />

    </system.web>

    PS. 官方事例里配置是

    <configuration>

    <system.web>

    <httpRuntime maxMessageLength="409600"

    executionTimeoutInSeconds="300"/>

    </system.web>

    </configuration>

    HttpRuntime 里没有 MaxMessageLength 也没有 那个ExecutionTimeoutinSeconds


    之后更改消息的大小,设置 maxMessageLength value="-1"

    <configuration>

    <microsoft.web.services3>

    <messaging>

    <maxMessageLength value="-1" />

    </messaging>

    </microsoft.web.services3>

    </configuration>

    官方事例链接

    How to: Enable a Web Service to Send and Receive Large Amounts of Data

    How to: Send and Receive Large Amounts of Data to and from a Web Service

    How to: Create a Proxy Class to Communicate with a Web Service

2007年5月23日星期三

完成了

终于,在今天下午,完成服务端代码的更改~

增加了很多东西(异常,+安全+日志)

该准备测试了

另外 ,


程序的 客户端 Host ,现在还没有想好~郁闷啊 ~

__________________________

PS. 今天早上,要回去睡觉的时候,发现锁头在屋里,
回来,关掉报警器,然后。。。。
突然的。。。
天棚掉下来了~
确切说是屋子上遍的墙皮,
而我距离那个位置,只有。。。。。。 2步~~~
啊,吓死了~~

2007年5月22日星期二

如此死机

晚上,刚刚修完系统,
然后在点一个下载链接后~~~

世界。。。 停止了 ~~~

机器挂了~~~

------------------------------------------

这次死机发现一个问题 ,
我这个机器挂了, 网络也挂了(路由没有 死掉)

我这个机器 DMZ 不知道是不是这个问题,
总之,先把路由的防火墙 大概,还有流量限制

程序员天敌之一

停电, 这个超级灾祸是映像我们开发的祸根

今天, 8:05起来,(受刺激了-_-----!)

然后干活,之后在我准备 写代码的时候

唰的一下。。。。屏幕黑掉 ,,然后 UPS 还是 吱吱的叫喊~~~

然后,为了关机, 我想把显示器接到UPS上,

在接的那一瞬间。。。。。。。。。

UPS过载了, 机器直接关了~~~(——____————!)
现在才回复,郁闷啊 ~~~

2007年5月21日星期一

无法实现

最近不知道为什么,总会有这种想法

那个,太难了,实现不了

或者

我不行了~~

之类的,现在吐血作者改版的程序
正在犹豫这客户端如何制作,

也许我当初就定义错了客户群~所以现在很痛苦

2007年5月20日星期日

无法完成的东西

今天,很晚的起来,(—__——!)
为了弥补,昨天死机照成的损失~~

现在,在怀疑自己能不能把这个程序做好呢!!

另外, 马上,新版VS就出来了, 要是考认证的话,也就N快过期了~
唉~~~~~~~~
迷茫中~~~~~~~~~~~~~~~~~~~~~