Monday, March 26, 2012

Replacement for ISAPI in SQL Server 2005

Hi everyone, I have some code that we need to migrate to SQL Server
2005 from 2000, and I have a webpage that upon viewing, fires a query
to the SQL server using ISS and ISAPI. The result set is formatted for
display using XSLT. But since ISAPI is deprecated in SQL 2005, I was
wondering how to migrate this.

Thanks,Have you looked into HTTP Endpoints? Here's one article:
http://www.developer.com/db/article.php/3390241
"herman404" <herman404@.hotmail.comwrote in message
news:1160498804.304649.35970@.m7g2000cwm.googlegrou ps.com...

Quote:

Originally Posted by

Hi everyone, I have some code that we need to migrate to SQL Server
2005 from 2000, and I have a webpage that upon viewing, fires a query
to the SQL server using ISS and ISAPI. The result set is formatted for
display using XSLT. But since ISAPI is deprecated in SQL 2005, I was
wondering how to migrate this.
>
Thanks,
>

|||Hello Mike C#,

In addition to HTTP Endpoints, note that the SQLXML 3.0 SP3 extension still
works with SQL Server 2005 on IIS5.2, IIS6 and with a little more effort
with IIS7.

Thanks,
Kent Tegels
http://staff.develop.com/ktegels/|||Hi, thanks for the tip about endpoints. I've created an Endpoint that
exposes the stored procedures I want to access; however the examples
I've seen involve creating a standalone Windows app to consume the web
service. Instead of that, I need to display the XML response as a web
page using XSLT. Any links to a tutorial?

Thanks,|||Hello herman404,

This is why I advocating using the existing ISAPI filter. It continues to
work for SQL Server 2005 and since you have your infrastructure in place...
no brainer.

That said, if your service is returning XML, you should be able to call the
CreateReader method of it and bind that the the ASP.NET XML control. If,
instead, you are returning the result of a query as a DataSet, load that
into an XmlDataDocument and use one of its XML returning methods to bind
up to the control.

The best tutotial is the one you write for yourself.

Thanks,
Kent Tegels
http://staff.develop.com/ktegels/|||Hi everyone,

I have a stored procedure that outputs an transformed XHTML document as
an XML data type. I have an HTTP Endpoint that exposes this procedure.
What I want to know is how do I form the URL to access this XHTML
document directly. I have granted connect access to public and I have
tried this URL:

http://servername/EndpointPath?wdsl
But all I get in return is the following SOAP message at the end of
this post. Does anyone know if it is possible to directly access the
HTTP Endpoint's response by a browser, or am I going to have to write a
special client to consume it?

Thanks,

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

<?xml version="1.0" encoding="utf-8" ?>
- <SOAP-ENV:Envelope xml:space="preserve"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
xmlns:sql="http://schemas.microsoft.com/sqlserver/2004/SOAP"
xmlns:sqlsoaptypes="http://schemas.microsoft.com/sqlserver/2004/SOAP/types"
xmlns:sqlrowcount="http://schemas.microsoft.com/sqlserver/2004/SOAP/types/SqlRowCount"
xmlns:sqlmessage="http://schemas.microsoft.com/sqlserver/2004/SOAP/types/SqlMessage"
xmlns:sqlresultstream="http://schemas.microsoft.com/sqlserver/2004/SOAP/types/SqlResultStream"
xmlns:sqltransaction="http://schemas.microsoft.com/sqlserver/2004/SOAP/types/SqlTransaction"
xmlns:sqltypes="http://schemas.microsoft.com/sqlserver/2004/sqltypes"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"
xmlns:wsdlgen="http://schemas.microsoft.com/sqlserver/2004/SOAP">
- <SOAP-ENV:Body>
- <SOAP-ENV:Fault
xmlns:sqlsoapfaultcode="http://schemas.microsoft.com/sqlserver/2004/SOAP/SqlSoapFaultCode">
- <SOAP-ENV:Code>
<SOAP-ENV:Value>SOAP-ENV:Receiver</SOAP-ENV:Value>
- <SOAP-ENV:Subcode>

<SOAP-ENV:Value>sqlsoapfaultcode:UnknownSqlServerError</SOAP-ENV:Value>

</SOAP-ENV:Subcode>
</SOAP-ENV:Code>
- <SOAP-ENV:Reason>
<SOAP-ENV:Text xml:lang="en-US">A server error occurred while
processing SOAP request: Receiver,
UnknownSqlServerError</SOAP-ENV:Text>
</SOAP-ENV:Reason>

<SOAP-ENV:Node>http://vdm44sql1:80/VegaRisk?wdsl?VegaRiskSVG</SOAP-ENV:Node>

<SOAP-ENV:Role>http://schemas.microsoft.com/sqlserver/2004/SOAP</SOAP-ENV:Role>

- <SOAP-ENV:Detail>
- <sqlresultstream:SqlMessage xsi:type="sqlmessage:SqlMessage">
<sqlmessage:Class>16</sqlmessage:Class>
<sqlmessage:LineNumber>25</sqlmessage:LineNumber>
<sqlmessage:Message>An unexpected query string was passed to a Web
Service Description Language (WSDL) generation
procedure.</sqlmessage:Message>
<sqlmessage:Number>17885</sqlmessage:Number>

<sqlmessage:Procedure>sp_http_generate_wsdl_defaultcomplexorsimple</sqlmessage:Procedure>

<sqlmessage:Server>VDM44SQL1</sqlmessage:Server>
<sqlmessage:Source>Microsoft-SQL/9.0</sqlmessage:Source>
<sqlmessage:State>1</sqlmessage:State>
</sqlresultstream:SqlMessage>
</SOAP-ENV:Detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

No comments:

Post a Comment