Avatar billede hedl Praktikant
04. september 2008 - 18:39 Der er 8 kommentarer

Web service fra Java til VB.Net

Hej er der nogle der kan hjælpe med at conveterer denne kode til brug i ASP.NET VB script

<!-- eventhandling-functions -->
        <script type="text/javascript">
            // Indicates the timeout (in msec) until the next "GetValues"-method is called
            var nRefreshTimeout = 2000;
           
            // called when initalized
            function Loader()
            {
                // initializes the WebService-communication
                body.onserviceavailable = enableServiceCall();

                // insert the URL of the WebService-WSDL-file and the name you want to use below
                body.useService("../TcMCE_Sample.asmx?wsdl","WebServiceSample");
               
                // starts the "GetValues"-loop
                GetValues_Request();
            }
           
            // is needed for correct WebServcie-handling
            function enableServiceCall(){}

           
            function GetValues_Request()
            {
                // asynchronous call of the WebService-method "GetValues" with no parameter-values
                // the result is sent to the "GetValues_Result" function
                iCallID = body.WebServiceSample.callService(GetValues_Result, "GetValues", "");
            }
           
            function GetValues_Result(res)
            {
                try
                {
                    if(res.error)
                    {
                        alert(res.errorDetail.string);
                    }
                    else if(res.value["GetValuesResult"] == false)
                    {
                        alert("WebService-Error!");
                    }
                    else
                    {
                        // Getting and displaying the new values
                        lblLight1Value.innerText = res.value["arrLightValues"][0];
                        lblLight2Value.innerText = res.value["arrLightValues"][1];
                        lblCounterValue.innerText = res.value["nCounterValue"];
                        lblSensor1Value.innerText = res.value["nSensor1Value"];
                        lblSensor2Value.innerText = res.value["nSensor2Value"];
                        lblSensor3Value.innerText = res.value["nSensor3Value"];
                        lblSensor4Value.innerText = res.value["nSensor4Value"];
                        lblSensor5Value.innerText = res.value["nSensor5Value"];
                        lblSensor6Value.innerText = res.value["nSensor6Value"];
                        lblSensor7Value.innerText = res.value["nSensor7Value"];
                        lblSensor8Value.innerText = res.value["nSensor8Value"];
                        lblSensor9Value.innerText = res.value["nSensor9Value"];
                        lblSensor10Value.innerText = res.value["nSensor10Value"];                       
               
                        // loop-timeout
                        window.setTimeout("GetValues_Request()",nRefreshTimeout);
                    }
                }
                catch(e)
                {
                    if (e.description == null)
                    {
                        alert("Error : " + e.message);
                    }
                    else
                    {
                        alert("Error : " + e.description);
                    }
                }
            }
           
           
           
        </script>
Avatar billede arne_v Ekspert
04. september 2008 - 18:46 #1
Visual Studio: lav web ref til TcMCE_Sample.asmx?wsdl

command line: koer wsdl utility paa TcMCE_Sample.asmx?wsdl

saa kan den web service kaldes ligesom almindelig kode
Avatar billede hedl Praktikant
04. september 2008 - 18:50 #2
Undskyld jeg forstår ikke hvad mener

Hvad under load enableServiceCall();
og denne insert the URL of the WebService-WSDL-file and the name you want to use below

Skal der bruges visual studio kan man ikke bare skrive koden i notepad
er det så knyttet til en maskine
Avatar billede hedl Praktikant
04. september 2008 - 19:00 #3
Skal jeg bruge
Microsoft Visual Basic 2008 Express Edition
eller
Microsoft Visual Web Developer 2008 Express Edition

Jeg har en web-site der skal hente nogle værdier i en PLC denne code er skrevet i C#
Avatar billede arne_v Ekspert
04. september 2008 - 19:08 #4
Du kan godt bruge notepad, saa skal du bare bruge wsdl command line utility til
at generere en stub klasse med.

Hvis du vil bruge VS og det er ASP.NET saa maa VWD vaere den rigtige.
Avatar billede hedl Praktikant
04. september 2008 - 19:46 #5
Jeg tror at jeg er dum
Kan man ikke gøre ligesom i Java

Sæt timeout for forespørgelsen
var nRefreshTimeout = 2000;

Start web service i en aspx fil     
// initializes the WebService-communication
body.onserviceavailable = enableServiceCall();

Sæt hvilken fil og class navn du vil bruge
Da der vil være mange sider der skla vises med forskellige værdier

// insert the URL of the WebService-WSDL-file and the name you want to use below
body.useService("../TcMCE_Sample.asmx?wsdl","WebServiceSample");

klader funktion i C# fil               
// starts the "GetValues"-loop
GetValues_Request();

Hvorfor skal køre wsdl utility
Avatar billede hedl Praktikant
04. september 2008 - 20:02 #6
Avatar billede arne_v Ekspert
04. september 2008 - 20:09 #7
WSDL utility genererer en stub som du kan kalde, saa du slipper for selv at skrive en
masse kode.
Avatar billede arne_v Ekspert
28. oktober 2008 - 02:33 #8
hedl ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester