请问csdn上有没有人用camel构建过webservice 实现应用之间的数据传输
我看过apache官网上关于camel的wiki 例如和spring整合的配置等等 好像camel的project是maven的
现在我想用camel创建一个工程(maven project ? 还是 普通的java project?) 用来发布一个webservice应该怎么做呢
希望有经验的朋友能给个教程或者例子 谢谢。
------解决方案--------------------------------------------------------
no
------解决方案--------------------------------------------------------
如何创建和使用Web Service代理类
Web服务代理是支持.net的编程语言文件,由.net框架提供的WSDL工具自动生成。代理类不包含任何应用程序逻辑。相反,他包含关于如何传递参数和检索结果的传输逻辑,还包含Web服务中的方法及原型列表。代理类可以从任何WSDL文件创建。
可以像访问com对象一样访问Web服务。要访问Web服务,需要从本地计算机上的Web服务的WSDL文档创建代理类。.net提供了名为WSDL.exe的工具以自动生成代理类文件。下面详细说明其创建和使用过程:
1、 新建一个asp应用程序(#C)工程,工程名为TeachShow,在TeachShow工程中创建一个文件夹Charpter8,在该文件夹下创建一个新的Web服务,取名为:Computer.asmx
2、 切换到代码视图,编写下面的代码:
[WebMethod(Description="用于相加运算", EnableSession=false)]
public int Add(int a,int b)
{
return a+b;
}
[WebMethod(Description="用于相减运算", EnableSession=false)]
public int Sub(int a,int b)
{
return a+b;
}
[WebMethod(Description="用于相乘运算", EnableSession=false)]
public int Multi(int a,int b)
{
return a*b;
}
[WebMethod(Description="用于相除运算", EnableSession=false)]
public double Devide(int a,int b)
{
return Convert.ToDouble(a)/Convert.ToDouble(b);
}
3、按F5编译整个工程(这一步一定要做,如果不做第4步无法实现)
4、打开MS.net 2003的命令提示工具,输入:C:/>wsdl http://localhost/TeachShow/Charpter8/FirstAndUse/Computer.asmx /n:ComputerNameSpace,其中,ComputerNameSpace是自定义的命名空间。提示如下:
Microsoft (R) Web 服务描述语言实用工具
[Microsoft (R) .NET Framework,版本 1.1.4322.573]
Copyright (C) Microsoft Corporation 1998-2002. All rights reserved.
正在写入文件“C:/Computer.cs”。
5、注意,此时在C:盘(其实就是命令提示符的当前目录)下生成一个和Computer.asmx相同文件名的C#源文件Computer.cs。
6、编译Computer.cs文件,在命令提示符下输入如下命令:C:/>csc /out:ComputerDll.dll /t:library /r:System.Web.Services.dll c:/Computer.cs。其中,/out:ComputerDll.dll是要输出的dll文件,/t:library是输出文件类型,/r:System.Web.Services.dll是要引用的组件,c:/Computer.cs是第4步生成的C#文件。
7、此时,将会在C:盘下生成一个叫ComputerDll.dll的文件,要使用这个文件,必须复制到TeachShow文件夹下的bin目录下。默认情况下为:C:/Inetpub/wwwroot/TeachShow/bin。
8、新建一个名为TestWSDL.aspx的WEB窗体文件,并添加一个引用,将刚才生成的ComputerDll.dll文件作为引用添加到工程中。
9、在TestWSDL.aspx窗体的Load事件中编写代码:
ComputerNameSpace.Computer com=new ComputerNameSpace.Computer();
this.Response.Write("和:"+com.Add(45,65).ToString()+" ");
this.Response.Write("减:"+com.Sub(78,900).ToString()+"");
this.Response.Write("乘:"+com.Multi(43,55).ToString()+"");
this.Response.Write("除:"+com.Devide(1000,33).ToString());
显示结果:
和:110
减:978
乘:2365
除:30.3030303030303
10、至此,程序完成。
-----------------------------------------------------------
直接用VS2005利用web service地址直接引用
webservice提供一个接口,供我们调用,只需调用其相应的方法,就会有数据返回,数据是以xml格式返回的.
有朋友问到:在我的blog中曾提到一些实用的Web Service,但不知道如何在vs中调用它,这里写了一个简单的教程.
希望 能有所帮助.
几个实用的Web Service地址
http://www.lemongtree.com/2006/03/28/0000307.aspx
这里我以天气预报地址:http://www.wopos.com/webservice/weather.asmx 为例来说明.
首先,我们在vs2005新建一个工程,这个工程可以是一个web工程,也可以是一个win程序.
当然,你也可以在vs2003中做下面的操作.我这里是建立的一个web工程
选取asp.net网站,然后确定 这时,vs2005会自动为我们新建一个default.aspx并已经打开了该文件