Ejemplo n.º 1
0
    /* This method gets triggered when invoke button is clicked on */
    protected void invokeButton_Click(object sender, EventArgs e)
    {
        if (invokeTypeButtonList.SelectedItem == null)
        {
            errorMessageLabel.Text = "You need to select an invocation type to proceed.";
            return;
        }

        if (invokeTypeButtonList.SelectedItem.Value == "SingleInvoke")
        {
            groupInvokeParametersLabel.Text            = "";
            groupInvokeParametersInstructionLabel.Text = "";
            groupInvokeParametersInputLabel.Text       = "";
            groupInvokeParametersOutputLabel.Text      = "";
            groupInvokeParametersHintLabel.Text        = "";
            groupInvokeList.DataSource = null;
            groupInvokeList.DataBind();
            groupInvokeResultsLabel.Text = "";
            groupInvokeResultsPanel.Controls.Clear();

            List <string> parameters = new List <string>();

            /* Traverse through all the parameterValues and add them to a list */
            foreach (DataListItem item in parameterValueDataList.Items)
            {
                string parameterValue = ((TextBox)item.FindControl("parameterValue")).Text;

                /* If you find that the parameter value is empty, return */
                if (parameterValue == "")
                {
                    errorMessageLabel.Text = "You need to enter all the input parameters to invoke an operation";
                    return;
                }

                parameters.Add(parameterValue);
            }

            string url = serviceUrlTextBox.Text;

            wsdlUtilsService.WSDLServiceClient wsdlUtilsClient =
                new wsdlUtilsService.WSDLServiceClient();

            try
            {
                /* Invoke the web service method */
                wsdlUtilsService.ReturnData returnData =
                    wsdlUtilsClient.InvokeWebServiceMethod(url, parametersLabel.Text,
                                                           parameters.ToArray());

                /* If return data is null, return */
                if (returnData == null)
                {
                    errorMessageLabel.Text = "The invocation didn't yield any result.";
                    return;
                }

                /* Display the result */
                TextBox resultXmlTextBox = new TextBox();
                resultXmlTextBox.Text     = returnData.objectXML;
                resultXmlTextBox.Rows     = 15;
                resultXmlTextBox.Columns  = 70;
                resultXmlTextBox.TextMode = TextBoxMode.MultiLine;

                resultsLabel.Text = "Results";
                resultsPanel.Controls.Add(resultXmlTextBox);
            }
            catch (Exception ec)
            {
                errorMessageLabel.Text = "Invocation didn't succeed. Try again later.";
            }
        }
        else
        {
            parametersLabel.Text = "";
            parameterValueDataList.DataSource = null;
            parameterValueDataList.DataBind();
            resultsLabel.Text = "";
            resultsPanel.Controls.Clear();

            List <string> inputParameters  = new List <string>();
            List <string> outputParameters = new List <string>();

            foreach (DataListItem item in groupInvokeList.Items)
            {
                DataList inputParameterDataList  = (DataList)item.FindControl("groupInvokeInputParameterList");
                DataList outputParameterDataList = (DataList)item.FindControl("groupInvokeOutputParameterList");

                /* Traverse through all the parameterValues and add them to a list */
                foreach (DataListItem inputItem in inputParameterDataList.Items)
                {
                    TextBox textBox             = (TextBox)inputItem.FindControl("groupInvokeInputParameterValue");
                    string  inputParameterValue = ((TextBox)inputItem.FindControl("groupInvokeInputParameterValue")).Text;

                    /* If you find that the parameter value is empty, return */
                    if (inputParameterValue == "")
                    {
                        errorMessageLabel.Text = "You need to enter all the input parameters to invoke an operation";
                        return;
                    }

                    inputParameters.Add(inputParameterValue);
                }

                /* Traverse through all the parameterValues and add them to a list */
                foreach (DataListItem outputItem in outputParameterDataList.Items)
                {
                    TextBox textBox = (TextBox)outputItem.FindControl("groupInvokeOutputParameterValue");
                    string  outputParameterValue = ((TextBox)outputItem.FindControl("groupInvokeOutputParameterValue")).Text;

                    /* If you find that the parameter value is empty, return */
                    if (outputParameterValue == "")
                    {
                        errorMessageLabel.Text = "You need to enter all the output parameters to invoke an operation";
                        return;
                    }

                    outputParameters.Add(outputParameterValue);
                }
            }

            string url = serviceUrlTextBox.Text;

            wsdlUtilsService.WSDLServiceClient wsdlUtilsClient =
                new wsdlUtilsService.WSDLServiceClient();

            try
            {
                /* Invoke the web service method */
                wsdlUtilsService.InvokeResult invokeResult =
                    wsdlUtilsClient.InvokeWebServiceOperationsGroup(url, inputParameters.ToArray(),
                                                                    outputParameters.ToArray());

                /* If return data is null, return */
                if (invokeResult == null)
                {
                    errorMessageLabel.Text = "The invocation didn't yield any result.";
                    return;
                }

                Table           resultsTable  = new Table();
                TableHeaderRow  resultsHeader = new TableHeaderRow();
                TableHeaderCell methodHeader  = new TableHeaderCell();
                methodHeader.Text = "Method Name";
                TableHeaderCell statusHeader = new TableHeaderCell();
                statusHeader.Text = "Invoke Status";
                resultsHeader.Cells.Add(methodHeader);
                resultsHeader.Cells.Add(statusHeader);
                resultsTable.Rows.Add(resultsHeader);

                for (int i = 0; i < invokeResult.MethodName.Length; i++)
                {
                    TableRow  row        = new TableRow();
                    TableCell methodCell = new TableCell();
                    TableCell statusCell = new TableCell();
                    methodCell.Text = invokeResult.MethodName[i];

                    if (invokeResult.InvokeStatus[i] == true)
                    {
                        statusCell.Text = "Success";
                    }
                    else
                    {
                        statusCell.Text = "Failure";
                    }

                    row.Cells.Add(methodCell);
                    row.Cells.Add(statusCell);
                    resultsTable.Rows.Add(row);
                }

                groupInvokeResultsPanel.Controls.Add(resultsTable);
                groupInvokeResultsLabel.Text = "Results";
            }
            catch (Exception ec)
            {
                errorMessageLabel.Text = "Invocation didn't succeed. Try again later.";
            }
        }
    }
Ejemplo n.º 2
0
    /* This method gets triggered when invoke button is clicked on */
    protected void invokeButton_Click(object sender, EventArgs e)
    {
        if (invokeTypeButtonList.SelectedItem == null)
        {
            errorMessageLabel.Text = "You need to select an invocation type to proceed.";
            return;
        }

        if (invokeTypeButtonList.SelectedItem.Value == "SingleInvoke")
        {
            groupInvokeParametersLabel.Text = "";
            groupInvokeParametersInstructionLabel.Text = "";
            groupInvokeParametersInputLabel.Text = "";
            groupInvokeParametersOutputLabel.Text = "";
            groupInvokeParametersHintLabel.Text = "";
            groupInvokeList.DataSource = null;
            groupInvokeList.DataBind();
            groupInvokeResultsLabel.Text = "";
            groupInvokeResultsPanel.Controls.Clear();

            List<string> parameters = new List<string>();

            /* Traverse through all the parameterValues and add them to a list */
            foreach (DataListItem item in parameterValueDataList.Items)
            {
                string parameterValue = ((TextBox)item.FindControl("parameterValue")).Text;

                /* If you find that the parameter value is empty, return */
                if (parameterValue == "")
                {
                    errorMessageLabel.Text = "You need to enter all the input parameters to invoke an operation";
                    return;
                }

                parameters.Add(parameterValue);
            }

            string url = serviceUrlTextBox.Text;

            wsdlUtilsService.WSDLServiceClient wsdlUtilsClient =
                new wsdlUtilsService.WSDLServiceClient();

            try
            {
                /* Invoke the web service method */
                wsdlUtilsService.ReturnData returnData =
                        wsdlUtilsClient.InvokeWebServiceMethod(url, parametersLabel.Text,
                                                               parameters.ToArray());

                /* If return data is null, return */
                if (returnData == null)
                {
                    errorMessageLabel.Text = "The invocation didn't yield any result.";
                    return;
                }

                /* Display the result */
                TextBox resultXmlTextBox = new TextBox();
                resultXmlTextBox.Text = returnData.objectXML;
                resultXmlTextBox.Rows = 15;
                resultXmlTextBox.Columns = 70;
                resultXmlTextBox.TextMode = TextBoxMode.MultiLine;

                resultsLabel.Text = "Results";
                resultsPanel.Controls.Add(resultXmlTextBox);
            }
            catch (Exception ec)
            {
                errorMessageLabel.Text = "Invocation didn't succeed. Try again later.";
            }
        }
        else
        {
            parametersLabel.Text = "";
            parameterValueDataList.DataSource = null;
            parameterValueDataList.DataBind();
            resultsLabel.Text = "";
            resultsPanel.Controls.Clear();

            List<string> inputParameters = new List<string>();
            List<string> outputParameters = new List<string>();

            foreach (DataListItem item in groupInvokeList.Items)
            {
                DataList inputParameterDataList = (DataList)item.FindControl("groupInvokeInputParameterList");
                DataList outputParameterDataList = (DataList)item.FindControl("groupInvokeOutputParameterList");

                /* Traverse through all the parameterValues and add them to a list */
                foreach (DataListItem inputItem in inputParameterDataList.Items)
                {
                    TextBox textBox = (TextBox)inputItem.FindControl("groupInvokeInputParameterValue");
                    string inputParameterValue = ((TextBox)inputItem.FindControl("groupInvokeInputParameterValue")).Text;

                    /* If you find that the parameter value is empty, return */
                    if (inputParameterValue == "")
                    {
                        errorMessageLabel.Text = "You need to enter all the input parameters to invoke an operation";
                        return;
                    }

                    inputParameters.Add(inputParameterValue);
                }

                /* Traverse through all the parameterValues and add them to a list */
                foreach (DataListItem outputItem in outputParameterDataList.Items)
                {
                    TextBox textBox = (TextBox)outputItem.FindControl("groupInvokeOutputParameterValue");
                    string outputParameterValue = ((TextBox)outputItem.FindControl("groupInvokeOutputParameterValue")).Text;

                    /* If you find that the parameter value is empty, return */
                    if (outputParameterValue == "")
                    {
                        errorMessageLabel.Text = "You need to enter all the output parameters to invoke an operation";
                        return;
                    }

                    outputParameters.Add(outputParameterValue);
                }
            }

            string url = serviceUrlTextBox.Text;

            wsdlUtilsService.WSDLServiceClient wsdlUtilsClient =
                new wsdlUtilsService.WSDLServiceClient();

            try
            {
                /* Invoke the web service method */
                wsdlUtilsService.InvokeResult invokeResult =
                        wsdlUtilsClient.InvokeWebServiceOperationsGroup(url, inputParameters.ToArray(),
                                                                        outputParameters.ToArray());

                /* If return data is null, return */
                if (invokeResult == null)
                {
                    errorMessageLabel.Text = "The invocation didn't yield any result.";
                    return;
                }

                Table resultsTable = new Table();
                TableHeaderRow resultsHeader = new TableHeaderRow();
                TableHeaderCell methodHeader = new TableHeaderCell();
                methodHeader.Text = "Method Name";
                TableHeaderCell statusHeader = new TableHeaderCell();
                statusHeader.Text = "Invoke Status";
                resultsHeader.Cells.Add(methodHeader);
                resultsHeader.Cells.Add(statusHeader);
                resultsTable.Rows.Add(resultsHeader);

                for (int i = 0; i < invokeResult.MethodName.Length; i++)
                {
                    TableRow row = new TableRow();
                    TableCell methodCell = new TableCell();
                    TableCell statusCell = new TableCell();
                    methodCell.Text = invokeResult.MethodName[i];

                    if (invokeResult.InvokeStatus[i] == true)
                        statusCell.Text = "Success";
                    else
                        statusCell.Text = "Failure";

                    row.Cells.Add(methodCell);
                    row.Cells.Add(statusCell);
                    resultsTable.Rows.Add(row);
                }

                groupInvokeResultsPanel.Controls.Add(resultsTable);
                groupInvokeResultsLabel.Text = "Results";
            }
            catch (Exception ec)
            {
                errorMessageLabel.Text = "Invocation didn't succeed. Try again later.";
            }

        }
    }