Posts Tagged ‘C#’

Chiamare un JSP (Java Server Page) da .NET

Chiamare una pagina JSP (Java Server Page) che ritorna un XML a volte può sembrare una cosa complicata ma non lo è. Un metodo molto semplice è usare la Classe HttpWebRequest di System.Net, in questo modo possiamo salvare il result in un file txt (se di grosse dimensioni) o gestirlo direttamente in memoria.

Ecco una funzioncina veloce, dove pageUrl è la url JSP Es: http://localhost/prova/prova.jsp?Parm1=1:

C#


public string GetJSPPage(string pageUrl)
{
string s = "";
try {
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(pageUrl);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
using (StreamReader reader = new StreamReader(response.GetResponseStream())) {
s = reader.ReadToEnd();
}
} catch (Exception ex) {
throw new Exception(ex.Message);
}
return s;
}

VB.NET


Function GetJSPPage(ByVal pageUrl As String) As String
Dim s As String = ""
Try
Dim request As HttpWebRequest = CType(WebRequest.Create(pageUrl), HttpWebRequest)
Dim response As HttpWebResponse = CType(request.GetResponse(), HttpWebResponse)
Using reader As StreamReader = New StreamReader(response.GetResponseStream())
s = reader.ReadToEnd()
End Using
Catch ex As Exception
Throw New Exception(ex.Message)
End Try
Return s
End Function

 

Request format is unrecognized for URL unexpectedly ending exception in web service

Chiamando un webservice da un javascript si può incorrere in questo errore: Request format is unrecognized for URL unexpectedly ending exception in web service. I webservice supportano tre tipi di protocolli di trasmissione HttpGet,HttpPost and SOAP. Nella versione 1.0 di .net framework erano abilitati di default mentre nelle versioni successivi per motivi di sicurezza questo non avviene più, bisogna configurare nel web.config i protocolli che si intende usare.

<system.web>
<webServices>
<protocols>
<add name="HttpGet"></add>
<add name="HttpPost"></add>
</protocols>
</webServices>
</system.web>