Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Languages / C#

Generate .NET 2.0 C# proxy file from a JBOSS Web Service

0.00/5 (No votes)
13 Jun 2007CPOL 1   224  
Solve the problem of failing to update a WebService after upgrading to NET 2.0 using VS2005 (using JBOSS).

Screenshot - screenshot.jpg

Introduction

I had a problem when converting my application from VS2003 to VS 2005: Failed to update the Web Service - got an error indicating bad schema format.

Background

This class provides a solution for the .NET 2.0 WSDL - JBOSS problem: When converting a web project from .NET 1.1 to .NET 2.0 and trying to update a Web Service that is connected to a WSDL on a JBOSS service, an error is raised. This util uses WSDL.exe of .NET 1.1 to generate and update the proxy class file.

Using the Code

Execute the application, enter the parameters as described, and click "Execute". The result is a new C# proxy class file, in the destination folder that you entered before execution.

The following code shows how to use WSDL.exe as an external util:

C#
//Declare and instantiate a new process component.
System.Diagnostics.Process process1;
process1 = new System.Diagnostics.Process();
try
{
    //Do not receive an event when the process exits.
    process1.EnableRaisingEvents = false;
    process1.StartInfo.FileName = "wsdl.exe";
    process1.StartInfo.WorkingDirectory = wsdlCommandPath;
    process1.StartInfo.Arguments = "/n:" + nameSpace + @" /out:" + 
                                   generatedFileName+ " " + wsdlFilePath;

    process1.StartInfo.UseShellExecute = false;
    process1.StartInfo.RedirectStandardError = true;
    process1.StartInfo.RedirectStandardOutput = true;

    process1.Start();
    string output = process1.StandardOutput.ReadToEnd();
    txtOutput.Text = output;

    string outputErr = process1.StandardError.ReadToEnd();
    if (outputErr != "") 
    txtError.Text = outputErr;

}
finally
{
    process1.Close();
}

Points of Interest

I can't help wonder why Microsoft can't make the conversion go smoothly. Why?

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)