Http post fra pagina web e webservice

giovedì 09 febbraio 2006 - 16.54

homer Profilo | Newbie

Ho una semplice pagina web con campo e testo e pulsante di invio dati che fa un http post verso un webservice:
<html>

<head>
<title>Sebina</title>
</head>

<body>

<FORM ACTION="http://localhost/RailsService/RailsWebService.asmx/Add" METHOD=POST>

Ricerca: <INPUT NAME="srch"></INPUT>
<INPUT TYPE="submit" value="Enter"> </INPUT>

</FORM>
</body>
</html>



il metodo del webservice è:
<WebMethod()> Public Function Add(ByVal a As Integer) As Integer
Return a + 10
End Function



quando inserisco un numero nella text box e premo il pulsante facendo il post carico l'indirizzo indicato nell'action:
http://localhost/RailsService/RailsWebService.asmx/Add
ma mi dà impossibile visualizzare la pagina, mentre se testo il webservice nel browser tutto funziona.

Se non uso un web service in form action punto ad una pagina web:
http://localhost/Rails/Answer.aspx
che semplicemente scrive sulla pagina quello che riceve tramite l'http post il cui codice è:

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Put user code to initialize the page here
Dim BodyContent As String

BodyContent = Server.HtmlEncode(CStr(Request.Params("srch")))

Response.Write(BodyContent)
End Sub

tutto funziona, cosa sto sbagliando con il webservice?
Grazie.
Non ho molta dimestichezza con applicazioni internet e la domanda potrebbe essere molto banale.

Brainkiller Profilo | Guru

>tutto funziona, cosa sto sbagliando con il webservice?
>Grazie.
>Non ho molta dimestichezza con applicazioni internet e la domanda
> potrebbe essere molto banale.

E chi ti ha detto che i Web Services si richiamano a questa maniera qui ?
E' la prima volta che lo vedo in 5 anni.
Sei sicuro ?

<FORM ACTION="http://localhost/RailsService/RailsWebService.asmx/Add" METHOD=POST>

Ciao

David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

Brainkiller Profilo | Guru

Leggiti questo Tip:
http://www.dotnethell.it/tips/ConsumeWebService.aspx

ciao

David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

homer Profilo | Newbie

Nel farlo avevo seguito abbastanza fedelmente (credo) il tutorial:
http://www.codeproject.com/webservices/aspwebsvr.asp
e il client che richiama il mio webservice non è in aspnet quindi non posso referenziarlo con il tutorial che mi indichi.
Grazie.

Alessandro

Brainkiller Profilo | Guru

>http://www.codeproject.com/webservices/aspwebsvr.asp
>e il client che richiama il mio webservice non è in aspnet quindi
> non posso referenziarlo con il tutorial che mi indichi.
>Grazie.

I web services sono interoperabili. Puoi consumarli da qualsiasi applicazione, che sia una appliczione Windows o Web è uguale, il procedimento per referenziarlo e poi utilizzato/consumarlo è sempre lo stesso.

Tasto destro, Aggiungi Riferimento Web.

Che problema c'è ?
ciao


David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

homer Profilo | Newbie

Se l'applicazione client è sviluppata in java come creo il riferimento al webservice?

Per o lo stato dell'arte è il seguente: sono riuscito a richiamare il web service da una pagina client aspx così fatta:

<%@ Page Language="vb" AutoEventWireup="false" Codebehind="default.aspx.vb" Inherits="Rails.sebina"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<body>
<form action="http://localhost/RailsService/RailsWebService.asmx/Add" method="post">
<input name="a"></input> <input name="b"></input> <input type="submit" value="Enter">
</input>
</form>
<PRE></PRE>
</body>
</HTML>

il metodo del web service è:
<WebMethod()> Public Function Add(ByVal a As Integer, ByVal b As Integer) As Integer
Return a + b
End Function

Inserendo 2 numeri ad es: 3,2 ritorna correttamente:
<?xml version="1.0" encoding="utf-8" ?>
<int xmlns="http://tempuri.org/RailsService/RailsWebService">5</int>


ma se il codice dell apagina client lo metto su di una pagina creata in front page la stessa operazione mi dà impossibile trovare la pagina. Quale accorgimento sui deve avere per richiamare un web service da un'applicazione client non sviluppata su piattaforma .net?
Grazie di nuovo.



Alessandro

homer Profilo | Newbie

Ok ho verificato che il precedente esmpio funziona anche se la pagina client è fatta con front page, avevo sbagliato a ricopiare nel form action l'indirizzo del web service da richiamare!
Grazie.

Alessandro
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5