Ir a contenido Ir a Estudios, Gobernanza y organización
Logo UA
Realizar búsqueda
Menú
Services

ejemplo asp publico

Para poder llamar a un Web Service desde su servidor, si trabaja con ASP 3.0, necesita tener instalado el Parser MSXML de Microsoft, el cual viene integrado con Internet Explorer 5 y superiores.

A continuación, puede ver el código fuente del ejemplo para observar cómo se invocan las funciones y cómo se reciben los datos resultantes o los errores.

  • Horario de una asignatura. En este ASP puede ver cómo se invoca la función pudiendo elegir qué es lo que queremos que muestre: el resultado formateado en HTML, en XML puro o mostrar el mensaje de llamada en XML.


<%
'Parametros de la funcion
  'La direccion deberá tener al final los parametros. Ej: ?lengua=C&curso=2009-10&codasi=9240&orden=T
    wlengua = "C" 'Request.QueryString("lengua")
    wcurso = "2010-11" 'Request.QueryString("curso")
    wcodasi = "9244" 'Request.QueryString("codasi")
    worden = "T" 'Request.QueryString("orden")
    
    if worden = "" then worden = "T"
    if wlengua = "" then wlengua = "C"
 
  funcion = "wshorarios"
  clase = "ClaseHorarios"
    namespace = "http://UASI/WS_GESTDOCENTE.wsdl"
    endpoint = "https://cvnet.cpd.ua.es/servicioweb/publicos/pub_gestdocente.asmx"
    action = "http://UASI/WS_GESTDOCENTE.wsdl/" & funcion
    
    
                cadenaXML = "<?xml version=""1.0"" encoding=""utf-8""?>" & vbCrLf
    cadenaXML = cadenaXML & " <SOAP-ENV:Envelope xmlns:SOAP-ENV=""http://schemas.xmlsoap.org/soap/envelope/"""
    cadenaXML = cadenaXML & "   SOAP-ENV:encodingStyle=""http://schemas.xmlsoap.org/soap/encoding/"""
    cadenaXML = cadenaXML & "   xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"""
    cadenaXML = cadenaXML & "   xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">"
    cadenaXML = cadenaXML & "  <SOAP-ENV:Body>" & vbCrLf
    cadenaXML = cadenaXML & "   <" & funcion & " xmlns=""" & namespace & """>" & vbCrLf
    
    cadenaXML = cadenaXML & "     <plengua xsi:type=""xsd:string"">" & wlengua & "</plengua>" & vbCrLf
    cadenaXML = cadenaXML & "     <pcurso xsi:type=""xsd:string"">" & wcurso & "</pcurso>" & vbCrLf
    cadenaXML = cadenaXML & "     <pcodasi xsi:type=""xsd:string"">" & wcodasi & "</pcodasi>" & vbCrLf
    cadenaXML = cadenaXML & "     <porden xsi:type=""xsd:string"">" & worden & "</porden>" & vbCrLf
    
    cadenaXML = cadenaXML & "   </" & funcion & ">" & vbCrLf
    cadenaXML = cadenaXML & "  </SOAP-ENV:Body>" & vbCrLf
    cadenaXML = cadenaXML & " </SOAP-ENV:Envelope>" & vbCrLf


    Set objInputXMLDoc = Server.CreateObject("Microsoft.XMLDOM")
    objInputXMLDoc.loadXML cadenaXML

    Set objXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
    objXMLHTTP.open "POST", endpoint, false
    objXMLHTTP.setRequestHeader "Content-Type", "text/xml"
    objXMLHTTP.setRequestHeader "soapAction", action
    objXMLHTTP.send objInputXMLDoc

        'Cabeceras
    if sLengua = "C" then
        sTxtTeoPra = "T/P"
        sTxtGrp = "Grupo"
        sTxtFinicio = "Dia Inicio"
        sTxtFfin = "Dia Finalización"
        sTxtDia = "Dia Semana"
        sTxtHinicio = "Hora inicio"
        sTxtHfin = "Hora fin"
        sTxtAula = "Aulas"
        sTxtDescaul = "Nombre aula"
        sTxtTipoAct = "Tipo actividad"
        sTxtAct = "Actividad"
    else
        sTxtTeoPra = "T/P"
        sTxtGrp = "Grup"
        sTxtFinicio = "Dia d'Inicio"
        sTxtFfin = "Dia Finalització"
        sTxtDia = "Dia Setmana"
        sTxtHinicio = "Hora d'inici"
        sTxtHfin = "Hora finalització"
        sTxtAula = "Aules"
        sTxtDescaul = "Nom d'aula"
        sTxtTipoAct = "Tipus activitat"
        sTxtAct = "Activitat"
    end if

     response.write "<HTML><HEAD>" & vbCrLf
    response.write "</HEAD><BODY>" & vbCrLf

    Set objOutputXMLDoc = Server.CreateObject("Microsoft.XMLDOM")
    objOutputXMLDoc.loadXML objXMLHTTP.responseText

    Set Nodes = objOutputXMLDoc.getElementsByTagName("faultstring")
    if Nodes.length>0 then
    
        For Each Node In Nodes
        
            p = Instr(Node.Text, "@@")
            if p>0 then
            
                E = Mid(Node.Text,p+2)
                p = Instr(E, "@@")
                E = Mid(E,1,p-1)
            else
                E = Node.Text
            end if
        next
        response.write(E)
    else
        response.write "<TABLE>" & vbCrLf
        response.write "<tbody>" & vbCrLf
        response.write "<TR>" & vbCrLf

        'Escribimos las cabeceras
        if sOrden="T" then
            response.write " <TH>" & sTxtTeoPra & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtGrp & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtFinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtFfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtDia & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAula & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtTipoAct & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAct & "</TH>" & vbCrLf
        elseif sOrden = "G" then
            response.write " <TH>" & sTxtGrp & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtFinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtFfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtDia & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtTeoPra & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAula & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtTipoAct & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAct & "</TH>" & vbCrLf
        else
            response.write " <TH>" & sTxtFinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtFfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtDia & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHinicio & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtHfin & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtGrp & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtTeoPra & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAula & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtTipoAct & "</TH>" & vbCrLf
            response.write " <TH>" & sTxtAct & "</TH>" & vbCrLf
        end if
        
        response.write "</TR>" & vbCrLf
               
         Set Nodes = objOutputXMLDoc.getElementsByTagName(clase)
           
                
    For Each Node In Nodes
                
            pTeopra        = Node.selectSingleNode("teopra").Text
            pCodgrp        = Node.selectSingleNode("codgrp").Text
            pFechainicio    = Node.selectSingleNode("fechainicio").Text
            pFechafin       = Node.selectSingleNode("fechafin").Text
            pDia            = Node.selectSingleNode("dia").Text
            pDiasemana      = Node.selectSingleNode("diasemana").Text
            pHoraini        = Node.selectSingleNode("horaini").Text
            pHorafin        = Node.selectSingleNode("horafin").Text
            pAula           = Node.selectSingleNode("aula").Text
            pDescaula       = Node.selectSingleNode("descaula").Text
            pAulasig        = Node.selectSingleNode("aulasig").Text
            pclase_activ    = Node.selectSingleNode("clase_activ").Text
            pdesc_activ    = Node.selectSingleNode("descactiv").Text
            
            response.write "<TR>" & vbCrLf
                    
                   response.Write "<td>" & pTeopra & "</td>"
                   response.Write "<td>" & pTeopra & "</td>"
            response.Write "<td>" & pCodgrp & "</td>"
            response.Write "<td>" & pFechainicio & "</td>"
            response.Write "<td>" & pFechafin & "</td>"
            response.Write "<td>" & pDia & "</td>"
            response.Write "<td>" & pDiasemana & "</td>"
            response.Write "<td>" & pHoraini & "</td>"
            response.Write "<td>" & pHorafin & "</td>"
            response.Write "<td>" & pAula & "</td>"
            response.Write "<td>" & pDescaula & "</td>"
            response.Write "<td>" & pAulasig & "</td>"
            response.Write "<td>" & pclase_activ & "</td>"
            response.Write "<td>" & pdesc_activ & "</td>"
            
            response.write "</TR>" & vbCrLf
        next

         response.write "</tbody>" & vbCrLf
        response.write "</TABLE>" & vbCrLf
    end if

     response.write "</BODY>" & vbCrLf
    response.write "</HTML>" & vbCrLf

%>

 

Nota: se ha solicitado el idioma: "en". Se devuelve la página con el entorno posible en ese idioma, pero el contenido en el idioma existente: "es"