环境:D6+SP2+IIS+WIN2000AD+SP2
WEB SERVICE:ISAPI DLL;
问题:SERVICE写好,用WEB浏览无问题;但调用的时候偶尔发生TEXT/HTML错误;说要求TEXT/XML,但得到的是TEXT/HTML。
其他:
1、能否和。NET的WEB SERVICE兼容?说是无问题,实际中如何呢?
2、和JAVA开发的WEB SERVICE能兼容吗?
3、哪里有较详细的资料下载?
不能感激!分数好说,我有一万可用分。
WEB SERVICE:ISAPI DLL;
问题:SERVICE写好,用WEB浏览无问题;但调用的时候偶尔发生TEXT/HTML错误;说要求TEXT/XML,但得到的是TEXT/HTML。
其他:
1、能否和。NET的WEB SERVICE兼容?说是无问题,实际中如何呢?
2、和JAVA开发的WEB SERVICE能兼容吗?
3、哪里有较详细的资料下载?
不能感激!分数好说,我有一万可用分。
解决方案 »
- TMemoryStream 如何转为string???
- delphi代码可以转成汇编代码么?
- 关于文件复制时,复制到的文件正在使用时,会跳出错误的问题!
- 为未来的孩子起个名字!起用者重奖2000分!
- 如何返回消息?
- 如何用SQL语句列出当前记录的记录号?
- 为广大编程爱好者提供软件发布平台
- 如何在TScrollBar控件的横向和纵向的ScrollBar移动时,扑获该操作的消息
- 想不想与我做笔交易?
- 参与就有分!!!!!谢谢大家帮个忙!!刚才关于这个问题还有些分,不够我可以再加!
- 请问用delphi读Excel数据到数据库地过程中报ole错误怎么解决?
- 请教关于使用adoquery的loadfromfile函数的问题
但调用的时候偶尔发生TEXT/HTML错误,说明你的客户端环境没有配置好。
2)d6如果采用xml,那么他能够与.net技术兼容,其本质就是大家共同使用相同的标识脚本罢了。
3)和JAVA开发能够兼容,但不完全。你试试就知道了。
4)资料我觉得看看它的帮助系统吧,尽管全部E文,但我还没有找到更全的资料库呢。
TEXT/HTML;
我都没有出错过。只是.net调用D7需要修改一下.net生成的代码。
我还发现,尽管D7是二进制代码,而.NET生成的是IL。第一次运行.net不如D7,但是以后,.net明显速度快于D7。
我看了HELP,里面 TWEBRESPONSE在返回CONTENTTYPE的时候返回REQUEST的CONTENTYPE,但是为什么没有返回呢?
ActiveX,
ComObj,
WebBroker,
ISAPIThreadPool,
ISAPIApp,
Unit1 in 'Unit1.pas' {WebModule1: TWebModule},
dddImpl in 'dddImpl.pas',
dddIntf in 'dddIntf.pas';{$R *.res}exports
GetExtensionVersion,
HttpExtensionProc,
TerminateExtension;begin
CoInitFlags := COINIT_MULTITHREADED;
Application.Initialize;
Application.CreateForm(TWebModule1, WebModule1);
Application.Run;
end.
/////////////////////////////////////////
{ SOAP WebModule }
unit Unit1;interfaceuses
SysUtils, Classes, HTTPApp, InvokeRegistry, WSDLIntf, TypInfo,
WebServExp, WSDLBind, XMLSchema, WSDLPub, SOAPPasInv, SOAPHTTPPasInv,
SOAPHTTPDisp, WebBrokerSOAP;type
TWebModule1 = class(TWebModule)
HTTPSoapDispatcher1: THTTPSoapDispatcher;
HTTPSoapPascalInvoker1: THTTPSoapPascalInvoker;
WSDLHTMLPublish1: TWSDLHTMLPublish;
procedure WebModule1DefaultHandlerAction(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;var
WebModule1: TWebModule1;implementation{$R *.dfm}procedure TWebModule1.WebModule1DefaultHandlerAction(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
WSDLHTMLPublish1.ServiceInfo(Sender, Request, Response, Handled);end;end.
////////////////////////////////////
{ Invokable interface Iddd }unit dddIntf;interfaceuses InvokeRegistry, Types, XSBuiltIns;type { Invokable interfaces must derive from IInvokable }
Iddd = interface(IInvokable)
['{6451BBF0-8E11-4F08-A0B0-D71E033A85B9}']
function geta:widestring;stdcall;
{ Methods of Invokable interface must not use the default }
{ calling convention; stdcall is recommended }
end;implementationinitialization
{ Invokable interfaces must be registered }
InvRegistry.RegisterInterface(TypeInfo(Iddd));end.
////////////////////////////////
{ Invokable implementation File for Tddd which implements Iddd }unit dddImpl;interfaceuses InvokeRegistry, Types, XSBuiltIns, dddIntf;type { Tddd }
Tddd = class(TInvokableClass, Iddd)
public
function geta:widestring;stdcall;
end;implementation
function tddd.geta:widestring;
begin
result:='hello world!';
end;
initialization
{ Invokable classes must be registered }
InvRegistry.RegisterInvokableClass(Tddd);end.