2013. 7. 12. 19:34

- HTTP


- HTTPS



Posted by sungwonpekr
2013. 7. 12. 15:04

출처 : http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/07/24/java-based-http-adapter--how-to-pass-username-and-password-in-query-string


Java based HTTP adapter - How to pass username and password in query string?


If you have started using Java based HTTP sender adapter, either you might have spent some time in finding out how to pass user name and password in the query string or you might still be wondering how to pass user name and password in query string.

 

If you use sap-user and sap-password, you might have noticed that it is not working anymore and you would get authentication error "HTTP/1.1 401 Unauthorized".

 

Instead of sap-user, j_username can be used to pass username in query string.

 

Instead of sap-password, j_password can be used to pass password in query string.

 

The url should look like

http://<server>:<port>/HttpAdapter/HttpMessageServlet?interfaceNamespace=test.com&interface=Test_Out&senderService=TEST_BS&senderParty=&receiverParty=&receiverService=&qos=BE&j_username=testuser&j_password=testpwd

 

Additional details on Java based HTTP adapter test tool are available at PI 7.30 HTTP Java Adapter Test Tools.

 

Additiona details on configuring the Java HTTP sender adapter and URL details are available at AAE - Configuring the Java HTTP Adapter on the Sender Channel.

 

Caution: You should avoid using this method of authentication in your landscape. This short blog is written just to inform the readers on what parameter names to be used for  user name and password in query string of http client that is sending request to Java HTTP adapter.

Posted by sungwonpekr
2013. 7. 12. 15:03

출처 : http://scn.sap.com/community/pi-and-soa-middleware/blog/2011/05/10/pi-730-http-java-adapter-test-tools



PI 7.30 HTTP Java Adapter Test Tools


At PI 7.11 and before, the HTTP adapter is an ABAP adapter. PI 7.3 introduces a new HTTP adapter (HTTP_AAE) based on the java stack, using the java Adapter Framework.

 

In this blog, we will take a look at a couple of test tools that we can use to test the HTTP_AAE adapter.

 

Introduction

 

In PI 7.3, in addition to the exiting HTTP adapter in ABAP, a java adapter (HTTP_AAE) has also been added. This new java adapter uses a java service to send the payload to the AAE of PI 7.3. The java adapter also provides two different methods of sending the payload, GET and POST, therefore, the need for 2 different test tools.

 

One of the benefits of using the HTTP_AAE adapter is to bypass the ABAP stack during message processing, which can increase the performance by as much as 10X. In addition, this adapter is a must-use when we install a java-only PI system without ABAP.

 

HTTP_AAE Adapter Overview

 

The URL to send the payload will be generated by the test tool with the following information. This is also the URL used for POST.

 

http://server:port/HttpAdapter/HttpMessageServlet?interfaceNamespace=sender-interface-namespace&interface=sender-interface-name&senderService=sender-business-component-name&qos=quality-of-service

 

    sender-business-component-name               

          Business Component name or Business System name used in the Integrated Configuration

    quality-of-service

          must be either BE or EO

 

With GET, the following URL is generated by the test tool. It is identical to the *POST* URL, except for the last parameter:

 

http://server:port/HttpAdapter/HttpMessageServlet?interfaceNamespace=sender-interface-namespace&interface=sender-interface-name&senderService=sender-business-component-name&qos=quality-of-service&Main-Payload-Parameter-Name=the-pay-load

    Main-Payload-Parameter-Name

          the Main Payload Parameter Name used in the HTTP_AAE communication channel configuration

    the pay load

          must be URL encoded so that special characters, e.g. "<" and ">" can be sent without problem.

 

  • POST

Sample input screen:

image

Sample result screen, with response:

image

 

HTML code which can be copy-n-pasted to a file with a file extension of .html, e.g. http_aae_Test_730_post.html.

<html>

<script type="text/javascript">;
<!--
function button1_onclick() {
  var result = "";
  var payload = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>";
  var senderNamespace = escape(document.MessageParameters.SenderNamespace.value);

  var reqString = "http://"
  reqString = reqString + document.MessageParameters.Server.value+":";
  reqString = reqString + document.MessageParameters.Port.value + "/HttpAdapter/HttpMessageServlet?";
  reqString = reqString + "interfaceNamespace=" + senderNamespace;
  reqString = reqString + "&interface=" + document.MessageParameters.SenderInterface.value;
  reqString = reqString + "&senderService=" + document.MessageParameters.SenderService.value;
  reqString = reqString + "&qos=" + document.MessageParameters.Qos.value;

  var xhttp = new ActiveXObject("msxml2.xmlhttp");
  xhttp.open ("POST", reqString, false);
  document.MessageParameters.URL.value=reqString;

  if (document.MessageParameters.Source[0].checked == true) {
    payload = document.MessageParameters.xmlData.value;
   xhttp.send (payload);
  }
  else{
    var xmlDoc = new ActiveXObject("microsoft.xmldom");
   xmlDoc.async=false;
   xmlDoc.load (document.MessageParameters.xmlFile.value);
   xhttp.send (xmlDoc);
  }
  result = xhttp.responseText;
  xhttp.close;
  document.MessageParameters.response.value=result;
}

function getFile() {
  var mypath = document.MessageParameters.xmlFile.value;
var ForReading  = 1;
objFSO          = new ActiveXObject("Scripting.FileSystemObject");
objTextFile     = objFSO.OpenTextFile(mypath, ForReading);

var filearray   = "";

for(var n=0;!objTextFile.AtEndOfStream;n++) {
  sRead = objTextFile.ReadLine();
  filearray += sRead + "\n";
}
objTextFile.Close();

document.MessageParameters.xmlData.value = filearray;
}


//-->
</script>
<head></head>

<body>

<h3>Client HTTP_AAE Adapter Test - Post </h3>
<form name="MessageParameters">
<p>
  <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">
   <h4>Header</h4>
    <tbody>
    <tr>
      <td width="10%"><label>ServerHost</label> </td>
      <td width="22%"><input type="text" id="host" name="Server" value="" size="20" /> </td>
      <td width="10%"><label>ServerPort</label> </td>
      <td width="22%"><input type="text" id="port" name="Port" value="" size="10" /> </td>
    </tr>
    <tr>
      <td width="10%"><label>SenderService</label> </td>
      <td width="22%">
      <input type="text" id="senderService" name="SenderService" value="" size="40" /> </td>
      <td width="10%">QOS</td>
      <td width="22%">
  <select id="qos" name="Qos">
  <option value="BE" selected>Best Effort</option>
  <option value="EO" >Exactly Once</option>
  </select>
      </td>
    </tr>
    <tr>
      <td width="10%"><label>SenderInterface</label> </td>
      <td width="22%">
      <input type="text" id="senderInterface" name="SenderInterface" value="" size="40" /> </td>
      <td width="10%"><label>SenderNamespace</label> </td>
      <td width="22%">
      <input type="text" id="senderNamespace" name="SenderNamespace" value="" size="40" /></td>
    </tr>
  </tbody>
  </table>
  <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">
   <br>
   <h4>Payload</h4>
    <tbody>
    <tr>
      <fieldset style="padding: 2">
       <td width="50%"><input type="radio" name="Source" value="Textarea" checked="checked" />Type in XML</td>
       <td width="50%"><input type="radio" name="Source" value="File" />Upload File</td>
      </fieldset>
    </tr>
    <tr>
      <td width="50%"><textarea name="xmlData" rows="10" cols="60"><a>test</a></textarea></td>
      <td width="50%"><input type="file" name="xmlFile" size="40"  onChange="return getFile()" /> </td>
    </tr>
  </tbody>
  </table>
  <p>
  <input type="button" value="Send" id="button1" name="button1" LANGUAGE="javascript" onclick="button1_onclick()" />
  </p>
  <hr />
  <h4 align="left">Result</h4>
  <p align="left">URL: <textarea rows="2" name="URL" cols="104"></textarea></p>
  Response Text:
  <textarea name="response" rows="5" cols="100"></textarea>
</form>

</body>

</html>

  • GET

Sample input screen:

http_test_tool-03.png

Sample result screen, with response:

http_test_tool-04.png

HTML code which can be copy-n-pasted to a file with a file extension of .html, e.g. http_aae_Test_730_get.html.

 

 

<html>

<script type="text/javascript">;
<!--
function button1_onclick() {
  var result = "";
  var payload = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>";
  var senderNamespace = escape(document.MessageParameters.SenderNamespace.value);

  var reqString = "http://"
  reqString = reqString + document.MessageParameters.Server.value+":";
  reqString = reqString + document.MessageParameters.Port.value + "/HttpAdapter/HttpMessageServlet?";
  reqString = reqString + "interfaceNamespace=" + senderNamespace;
  reqString = reqString + "&interface=" + document.MessageParameters.SenderInterface.value;
  reqString = reqString + "&senderService=" + document.MessageParameters.SenderService.value;
  reqString = reqString + "&qos=" + document.MessageParameters.Qos.value;
  reqString = reqString + "&" + document.MessageParameters.MainPayload.value + "=";
  reqString = reqString + encodeURIComponent(document.MessageParameters.xmlData.value);

  var xhttp = new ActiveXObject("msxml2.xmlhttp");
  xhttp.open ("GET", reqString, false);
  document.MessageParameters.URL.value=reqString;

  if (document.MessageParameters.Source[0].checked == true) {
    payload = document.MessageParameters.xmlData.value;
   xhttp.send (payload);
  }
  else{
    var xmlDoc = new ActiveXObject("microsoft.xmldom");
   xmlDoc.async=false;
   xmlDoc.load (document.MessageParameters.xmlFile.value);
   xhttp.send (xmlDoc);
  }
  result = xhttp.responseText;
  xhttp.close;
  document.MessageParameters.response.value=result;
}

function getFile() {
  var mypath = document.MessageParameters.xmlFile.value;
var ForReading  = 1;
objFSO          = new ActiveXObject("Scripting.FileSystemObject");
objTextFile     = objFSO.OpenTextFile(mypath, ForReading);

var filearray   = "";

for(var n=0;!objTextFile.AtEndOfStream;n++) {
  sRead = objTextFile.ReadLine();
  filearray += sRead + "\n";
}
objTextFile.Close();

document.MessageParameters.xmlData.value = filearray;
}


//-->
</script>
<head></head>

<body>

<h3>Client HTTP_AAE Adapter Test - Get </h3>
<form name="MessageParameters">
<p>
  <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">
   <h4>Header</h4>
    <tbody>
    <tr>
      <td width="10%"><label>ServerHost</label> </td>
      <td width="22%"><input type="text" id="host" name="Server" value="" size="20" /> </td>
      <td width="10%"><label>ServerPort</label> </td>
      <td width="22%"><input type="text" id="port" name="Port" value="" size="10" /> </td>
    </tr>
    <tr>
      <td width="10%"><label>SenderService</label> </td>
      <td width="22%">
      <input type="text" id="senderService" name="SenderService" value="" size="40" /> </td>
      <td width="10%">QOS</td>
      <td width="22%">
  <select id="qos" name="Qos">
  <option value="BE" selected>Best Effort</option>
  <option value="EO" >Exactly Once</option>
  </select>
      </td>
    </tr>
    <tr>
      <td width="10%"><label>SenderInterface</label> </td>
      <td width="22%">
      <input type="text" id="senderInterface" name="SenderInterface" value="" size="40" /> </td>
      <td width="10%"><label>SenderNamespace</label> </td>
      <td width="22%">
      <input type="text" id="senderNamespace" name="SenderNamespace" value="" size="40" /></td>
    </tr>
  </tbody>
  </table>
  <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">
   <br>
   <h4>Payload</h4>
   <label>Main Payload Parameter Name:</label>
   <input type="text" id="mainPayload" name="MainPayload" value="" size="40" />
   <P>
    <tbody>
    <tr>
      <fieldset style="padding: 2">
       <td width="50%"><input type="radio" name="Source" value="Textarea" checked="checked" />Type in XML</td>
       <td width="50%"><input type="radio" name="Source" value="File" />Upload File</td>
      </fieldset>
    </tr>
    <tr>
      <td width="50%"><textarea name="xmlData" rows="10" cols="60"><a>test</a></textarea></td>
      <td width="50%"><input type="file" name="xmlFile" size="40"  onChange="return getFile()" /> </td>
    </tr>
  </tbody>
  </table>
  <p>
  <input type="button" value="Send" id="button1" name="button1" LANGUAGE="javascript" onclick="button1_onclick()" />
  </p>
  <hr />
  <h4 align="left">Result</h4>
  <p align="left">URL: <textarea rows="6" name="URL" cols="104"></textarea></p>
  Response Text:
  <textarea name="response" rows="5" cols="100"></textarea>
</form>

</body>

</html>










Posted by sungwonpekr
2013. 7. 10. 13:45
Xml 문서 생성 샘플 코드





Posted by sungwonpekr
2013. 7. 10. 11:30

PI 인터페이스 HTTP 방식 호출 샘플 코드





Posted by sungwonpekr
2013. 7. 9. 15:08

호출 URL


 http://servername:port/invoke/folder.subFolder.subsubFolder/serviceName



parameter로 값 입력


 http://servername:port/invoke/pub.math/addInts?num1=5&num2=12



html form에서 post 방식 호출


   Num1 = <input type="text" name="num1" size="5">, num2 = <input type="text" name="num2" size="5"> <input type="submit" value="invoke addInts" >
</form>


Posted by sungwonpekr
2013. 7. 9. 11:24
SAX를 이용한 XML String parsing




Posted by sungwonpekr
2013. 5. 25. 12:31

 


이전 버전을 계속 포스팅 했었는데, br태그가 이상하게 나온다거나.. tistory에서 사용 할 때 불편한 문제점들이 이것저것 있는데.. 아래 처럼 사용하면 좀 더 편하게 사용 할 수 있습니다.

먼저 최신 버전의 SyntaxHighlighter을 다운로드 받습니다. 

압축을 풀면 아래와 같이 보입니다. 
여기서 scripts와 styles 폴더의 내용을 모두, 
관리자 화면 > 스킨 > HTML/CSS편집 > 파일 업로드에서 파일 업로드를 통해서 올려 줍니다.

추가 된 것을 확인 하시면,
관리자 화면 > 스킨 > HTML/CSS편집 > HTML/CSS편집에서 <title> 밑에 아래 코드를 추가해 줍니다.

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript" src="./images/shCore.js"></script>
<script type="text/javascript" src="./images/shLegacy.js"></script>
<script type="text/javascript" src="./images/shBrushAppleScript.js"></script>
<script type="text/javascript" src="./images/shBrushAS3.js"></script>
<script type="text/javascript" src="./images/shBrushBash.js"></script>
<script type="text/javascript" src="./images/shBrushColdFusion.js"></script>
<script type="text/javascript" src="./images/shBrushCpp.js"></script>
<script type="text/javascript" src="./images/shBrushCSharp.js"></script>
<script type="text/javascript" src="./images/shBrushCss.js"></script>
<script type="text/javascript" src="./images/shBrushDelphi.js"></script>
<script type="text/javascript" src="./images/shBrushDiff.js"></script>
<script type="text/javascript" src="./images/shBrushErlang.js"></script>
<script type="text/javascript" src="./images/shBrushGroovy.js"></script>
<script type="text/javascript" src="./images/shBrushJava.js"></script>
<script type="text/javascript" src="./images/shBrushJavaFx.js"></script>
<script type="text/javascript" src="./images/shBrushJScript.js"></script>
<script type="text/javascript" src="./images/shBrushPerl.js"></script>
<script type="text/javascript" src="./images/shBrushPhp.js"></script>
<script type="text/javascript" src="./images/shBrushPlain.js"></script>
<script type="text/javascript" src="./images/shBrushPowerShell.js"></script>
<script type="text/javascript" src="./images/shBrushPython.js"></script>
<script type="text/javascript" src="./images/shBrushRuby.js"></script>
<script type="text/javascript" src="./images/shBrushSass.js"></script>
<script type="text/javascript" src="./images/shBrushScala.js"></script>
<script type="text/javascript" src="./images/shBrushSql.js"></script>
<script type="text/javascript" src="./images/shBrushVb.js"></script>
<script type="text/javascript" src="./images/shBrushXml.js"></script>
<link type="text/css" rel="stylesheet" href="./images/shCore.css"/>
<link type="text/css" rel="stylesheet" href="./images/shThemeDefault.css"/>
<script type="text/javascript">

/* jQuery 부분  */
jQuery.noConflict();  // 다른 라이브러리와 충돌을 방지한다.
jQuery(document).ready(function(){  // 문서가 모두 읽힌 후에 다음을 실행
    jQuery("blockquote").each( function() {  //blokquote가 사용한 태그
        if (jQuery(this).attr('class').substr(0,5)=='brush') 
        // 그중 클래스명이 brush로 시작하는 것을 찾아 적용
        {
            var temp = jQuery(this).html(); //  내용 복사
            temp = temp.replace(/\n/gi, "");
            temp = temp.replace(/<BR>/gi, "\n");
            temp = temp.replace(/<BR \/>/gi, "\n");
            //temp = '<pre class="'+ jQuery(this).attr('class') + '">'+temp+'</pre>'
            temp = '<script type="syntaxhighlighter" class="'+ jQuery(this).attr('class') + '"><![CDATA['+temp+']]><\/script>'
            jQuery(this).after(temp);   // 뒤에 새 작성된 pre 또는 script태그로 붙인다.
            jQuery(this).remove();         //  기존의 인용태그 삭제
        }
    });

    /* SyntaxHighlighter 부분 */
    SyntaxHighlighter.defaults['toolbar'] = false;    // 툴바 안 보기
    SyntaxHighlighter.all();
});
</script>



jQuery는 구글의 apis에서 가져다 오도록 했습니다. 현재 최신 버전이 1.4.4입니다.
그리고, 41번과 42번 줄에 보시면, pre태그와 script태그를 둘중 하나를 선택해서 사용 하시면 되는데..
여기를 참고 하시고 선택해서 사용하세요.
저 같은 경우에는 script 태그를 선택 했습니다.
그리고 사용하는 방법은 매우 간단해 졌습니다.

텍스트 모드에서 붙여 넣기를 한 후,
인용구<Ctrl+Q>를 선택 하시면 됩니다.

그리고 HTML 편집 모드로 들어 가셔서 blockquote를 찾으셔서, 태그에 적당한 brush를 넣어 주시면, 코드가 깔끔하게 들어 갑니다.

<blockquote class="brush:html">
...
</blockquote>
그리고, 줄에 하일라이트를 넣고 싶거나, 상세 설정은 
  • http://alexgorbatchev.com/SyntaxHighlighter/manual/configuration/
이 페이지를 참고 하시면 됩니다. 


지원 문법

Brush nameBrush aliasesFile name
ActionScript3as3, actionscript3shBrushAS3.js
Bash/shellbash, shellshBrushBash.js
ColdFusioncf, coldfusionshBrushColdFusion.js
C#c-sharp, csharpshBrushCSharp.js
C++cpp, cshBrushCpp.js
CSScssshBrushCss.js
Delphidelphi, pas, pascalshBrushDelphi.js
Diffdiff, patchshBrushDiff.js
Erlangerl, erlangshBrushErlang.js
GroovygroovyshBrushGroovy.js
JavaScriptjs, jscript, javascriptshBrushJScript.js
JavajavashBrushJava.js
JavaFXjfx, javafxshBrushJavaFX.js
Perlperl, plshBrushPerl.js
PHPphpshBrushPhp.js
Plain Textplain, textshBrushPlain.js
PowerShellps, powershellshBrushPowerShell.js
Pythonpy, pythonshBrushPython.js
Rubyrails, ror, rubyshBrushRuby.js
ScalascalashBrushScala.js
SQLsqlshBrushSql.js
Visual Basicvb, vbnetshBrushVb.js
XMLxml, xhtml, xslt, html, xhtmlshBrushXml.js


참고 사이트

이 포스팅에 사용된 버전


Posted by sungwonpekr
2013. 5. 22. 11:23

server side

 

package kr.pe.sungwon.server;

public class ReturnMsg {
   
    public String getMsg(String msg)
    {
        return msg;
    }

}

 

 

client side

 

build.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<project default="wsimport">
    <target name="wsimport">
        <exec executable="d:/axis2/axis2-1.4.1/bin/wsdl2java.bat">
            <arg line="-uri http://localhost:8080/test_server/services/ReturnMsg?wsdl"/>
        </exec>
    </target>
</project>

 

 


/**
 * ReturnMsgStub.java
 *
 * This file was auto-generated from WSDL
 * by the Apache Axis2 version: 1.5.1  Built on : Oct 19, 2009 (10:59:00 EDT)
 */
        package kr.pe.sungwon.server;

       

        /*
        *  ReturnMsgStub java implementation
        */

       
        public class ReturnMsgStub extends org.apache.axis2.client.Stub
        {
        protected org.apache.axis2.description.AxisOperation[] _operations;

        //hashmaps to keep the fault mapping
        private java.util.HashMap faultExceptionNameMap = new java.util.HashMap();
        private java.util.HashMap faultExceptionClassNameMap = new java.util.HashMap();
        private java.util.HashMap faultMessageMap = new java.util.HashMap();

        private static int counter = 0;

        private static synchronized java.lang.String getUniqueSuffix(){
            // reset the counter if it is greater than 99999
            if (counter > 99999){
                counter = 0;
            }
            counter = counter + 1;
            return java.lang.Long.toString(System.currentTimeMillis()) + "_" + counter;
        }

   
    private void populateAxisService() throws org.apache.axis2.AxisFault {

     //creating the Service with a unique name
     _service = new org.apache.axis2.description.AxisService("ReturnMsg" + getUniqueSuffix());
     addAnonymousOperations();

        //creating the operations
        org.apache.axis2.description.AxisOperation __operation;

        _operations = new org.apache.axis2.description.AxisOperation[1];
       
                   __operation = new org.apache.axis2.description.OutInAxisOperation();
               

            __operation.setName(new javax.xml.namespace.QName("http://server.sungwon.pe.kr", "getMsg"));
        _service.addOperation(__operation);
       

       
       
            _operations[0]=__operation;
           
       
        }

    //populates the faults
    private void populateFaults(){
        


    }

    /**
      *Constructor that takes in a configContext
      */

    public ReturnMsgStub(org.apache.axis2.context.ConfigurationContext configurationContext,
       java.lang.String targetEndpoint)
       throws org.apache.axis2.AxisFault {
         this(configurationContext,targetEndpoint,false);
   }


   /**
     * Constructor that takes in a configContext  and useseperate listner
     */
   public ReturnMsgStub(org.apache.axis2.context.ConfigurationContext configurationContext,
        java.lang.String targetEndpoint, boolean useSeparateListener)
        throws org.apache.axis2.AxisFault {
         //To populate AxisService
         populateAxisService();
         populateFaults();

        _serviceClient = new org.apache.axis2.client.ServiceClient(configurationContext,_service);
       
   
        _serviceClient.getOptions().setTo(new org.apache.axis2.addressing.EndpointReference(
                targetEndpoint));
        _serviceClient.getOptions().setUseSeparateListener(useSeparateListener);
       
            //Set the soap version
            _serviceClient.getOptions().setSoapVersionURI(org.apache.axiom.soap.SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
       
   
    }

    /**
     * Default Constructor
     */
    public ReturnMsgStub(org.apache.axis2.context.ConfigurationContext configurationContext) throws org.apache.axis2.AxisFault {
       
                    this(configurationContext,"http://16.3.30.181:8080/test_server/services/ReturnMsg.ReturnMsgHttpSoap12Endpoint/" );
               
    }

    /**
     * Default Constructor
     */
    public ReturnMsgStub() throws org.apache.axis2.AxisFault {
       
                    this("http://16.3.30.181:8080/test_server/services/ReturnMsg.ReturnMsgHttpSoap12Endpoint/" );
               
    }

    /**
     * Constructor taking the target endpoint
     */
    public ReturnMsgStub(java.lang.String targetEndpoint) throws org.apache.axis2.AxisFault {
        this(null,targetEndpoint);
    }



       
                    /**
                     * Auto generated method signature
                     *
                     * @see kr.pe.sungwon.server.ReturnMsg#getMsg
                     * @param getMsg0
                   
                     */

                   

                            public  kr.pe.sungwon.server.ReturnMsgStub.GetMsgResponse getMsg(

                            kr.pe.sungwon.server.ReturnMsgStub.GetMsg getMsg0)
                       

                    throws java.rmi.RemoteException
                   
                    {
              org.apache.axis2.context.MessageContext _messageContext = null;
              try{
               org.apache.axis2.client.OperationClient _operationClient = _serviceClient.createClient(_operations[0].getName());
              _operationClient.getOptions().setAction("urn:getMsg");
              _operationClient.getOptions().setExceptionToBeThrownOnSOAPFault(true);

             
             
                  addPropertyToOperationClient(_operationClient,org.apache.axis2.description.WSDL2Constants.ATTR_WHTTP_QUERY_PARAMETER_SEPARATOR,"&");
             

              // create a message context
              _messageContext = new org.apache.axis2.context.MessageContext();

             

              // create SOAP envelope with that payload
              org.apache.axiom.soap.SOAPEnvelope env = null;
                   
                                                   
                                                    env = toEnvelope(getFactory(_operationClient.getOptions().getSoapVersionURI()),
                                                    getMsg0,
                                                    optimizeContent(new javax.xml.namespace.QName("http://server.sungwon.pe.kr",
                                                    "getMsg")));
                                               
        //adding SOAP soap_headers
         _serviceClient.addHeadersToEnvelope(env);
        // set the message context with that soap envelope
        _messageContext.setEnvelope(env);

        // add the message contxt to the operation client
        _operationClient.addMessageContext(_messageContext);

        //execute the operation client
        _operationClient.execute(true);

        
               org.apache.axis2.context.MessageContext _returnMessageContext = _operationClient.getMessageContext(
                                           org.apache.axis2.wsdl.WSDLConstants.MESSAGE_LABEL_IN_VALUE);
                org.apache.axiom.soap.SOAPEnvelope _returnEnv = _returnMessageContext.getEnvelope();
               
               
                                java.lang.Object object = fromOM(
                                             _returnEnv.getBody().getFirstElement() ,
                                             kr.pe.sungwon.server.ReturnMsgStub.GetMsgResponse.class,
                                              getEnvelopeNamespaces(_returnEnv));

                              
                                        return (kr.pe.sungwon.server.ReturnMsgStub.GetMsgResponse)object;
                                  
         }catch(org.apache.axis2.AxisFault f){

            org.apache.axiom.om.OMElement faultElt = f.getDetail();
            if (faultElt!=null){
                if (faultExceptionNameMap.containsKey(faultElt.getQName())){
                    //make the fault by reflection
                    try{
                        java.lang.String exceptionClassName = (java.lang.String)faultExceptionClassNameMap.get(faultElt.getQName());
                        java.lang.Class exceptionClass = java.lang.Class.forName(exceptionClassName);
                        java.lang.Exception ex=
                                (java.lang.Exception) exceptionClass.newInstance();
                        //message class
                        java.lang.String messageClassName = (java.lang.String)faultMessageMap.get(faultElt.getQName());
                        java.lang.Class messageClass = java.lang.Class.forName(messageClassName);
                        java.lang.Object messageObject = fromOM(faultElt,messageClass,null);
                        java.lang.reflect.Method m = exceptionClass.getMethod("setFaultMessage",
                                   new java.lang.Class[]{messageClass});
                        m.invoke(ex,new java.lang.Object[]{messageObject});
                       

                        throw new java.rmi.RemoteException(ex.getMessage(), ex);
                    }catch(java.lang.ClassCastException e){
                       // we cannot intantiate the class - throw the original Axis fault
                        throw f;
                    } catch (java.lang.ClassNotFoundException e) {
                        // we cannot intantiate the class - throw the original Axis fault
                        throw f;
                    }catch (java.lang.NoSuchMethodException e) {
                        // we cannot intantiate the class - throw the original Axis fault
                        throw f;
                    } catch (java.lang.reflect.InvocationTargetException e) {
                        // we cannot intantiate the class - throw the original Axis fault
                        throw f;
                    }  catch (java.lang.IllegalAccessException e) {
                        // we cannot intantiate the class - throw the original Axis fault
                        throw f;
                    }   catch (java.lang.InstantiationException e) {
                        // we cannot intantiate the class - throw the original Axis fault
                        throw f;
                    }
                }else{
                    throw f;
                }
            }else{
                throw f;
            }
            } finally {
                _messageContext.getTransportOut().getSender().cleanup(_messageContext);
            }
        }
           
                /**
                * Auto generated method signature for Asynchronous Invocations
                *
                * @see kr.pe.sungwon.server.ReturnMsg#startgetMsg
                    * @param getMsg0
               
                */
                public  void startgetMsg(

                 kr.pe.sungwon.server.ReturnMsgStub.GetMsg getMsg0,

                  final kr.pe.sungwon.server.ReturnMsgCallbackHandler callback)

                throws java.rmi.RemoteException{

              org.apache.axis2.client.OperationClient _operationClient = _serviceClient.createClient(_operations[0].getName());
             _operationClient.getOptions().setAction("urn:getMsg");
             _operationClient.getOptions().setExceptionToBeThrownOnSOAPFault(true);

             
             
                  addPropertyToOperationClient(_operationClient,org.apache.axis2.description.WSDL2Constants.ATTR_WHTTP_QUERY_PARAMETER_SEPARATOR,"&");
             


              // create SOAP envelope with that payload
              org.apache.axiom.soap.SOAPEnvelope env=null;
              final org.apache.axis2.context.MessageContext _messageContext = new org.apache.axis2.context.MessageContext();

                   
                                    //Style is Doc.
                                   
                                                   
                                                    env = toEnvelope(getFactory(_operationClient.getOptions().getSoapVersionURI()),
                                                    getMsg0,
                                                    optimizeContent(new javax.xml.namespace.QName("http://server.sungwon.pe.kr",
                                                    "getMsg")));
                                               
        // adding SOAP soap_headers
         _serviceClient.addHeadersToEnvelope(env);
        // create message context with that soap envelope
        _messageContext.setEnvelope(env);

        // add the message context to the operation client
        _operationClient.addMessageContext(_messageContext);


                   
                        _operationClient.setCallback(new org.apache.axis2.client.async.AxisCallback() {
                            public void onMessage(org.apache.axis2.context.MessageContext resultContext) {
                            try {
                                org.apache.axiom.soap.SOAPEnvelope resultEnv = resultContext.getEnvelope();
                               
                                        java.lang.Object object = fromOM(resultEnv.getBody().getFirstElement(),
                                                                         kr.pe.sungwon.server.ReturnMsgStub.GetMsgResponse.class,
                                                                         getEnvelopeNamespaces(resultEnv));
                                        callback.receiveResultgetMsg(
                                        (kr.pe.sungwon.server.ReturnMsgStub.GetMsgResponse)object);
                                       
                            } catch (org.apache.axis2.AxisFault e) {
                                callback.receiveErrorgetMsg(e);
                            }
                            }

                            public void onError(java.lang.Exception error) {
                                if (error instanceof org.apache.axis2.AxisFault) {
                                    org.apache.axis2.AxisFault f = (org.apache.axis2.AxisFault) error;
                                    org.apache.axiom.om.OMElement faultElt = f.getDetail();
                                    if (faultElt!=null){
                                        if (faultExceptionNameMap.containsKey(faultElt.getQName())){
                                            //make the fault by reflection
                                            try{
                                                    java.lang.String exceptionClassName = (java.lang.String)faultExceptionClassNameMap.get(faultElt.getQName());
                                                    java.lang.Class exceptionClass = java.lang.Class.forName(exceptionClassName);
                                                    java.lang.Exception ex=
                                                        (java.lang.Exception) exceptionClass.newInstance();
                                                    //message class
                                                    java.lang.String messageClassName = (java.lang.String)faultMessageMap.get(faultElt.getQName());
                                                        java.lang.Class messageClass = java.lang.Class.forName(messageClassName);
                                                    java.lang.Object messageObject = fromOM(faultElt,messageClass,null);
                                                    java.lang.reflect.Method m = exceptionClass.getMethod("setFaultMessage",
                                                            new java.lang.Class[]{messageClass});
                                                    m.invoke(ex,new java.lang.Object[]{messageObject});
                                                   
                   
                                                    callback.receiveErrorgetMsg(new java.rmi.RemoteException(ex.getMessage(), ex));
                                            } catch(java.lang.ClassCastException e){
                                                // we cannot intantiate the class - throw the original Axis fault
                                                callback.receiveErrorgetMsg(f);
                                            } catch (java.lang.ClassNotFoundException e) {
                                                // we cannot intantiate the class - throw the original Axis fault
                                                callback.receiveErrorgetMsg(f);
                                            } catch (java.lang.NoSuchMethodException e) {
                                                // we cannot intantiate the class - throw the original Axis fault
                                                callback.receiveErrorgetMsg(f);
                                            } catch (java.lang.reflect.InvocationTargetException e) {
                                                // we cannot intantiate the class - throw the original Axis fault
                                                callback.receiveErrorgetMsg(f);
                                            } catch (java.lang.IllegalAccessException e) {
                                                // we cannot intantiate the class - throw the original Axis fault
                                                callback.receiveErrorgetMsg(f);
                                            } catch (java.lang.InstantiationException e) {
                                                // we cannot intantiate the class - throw the original Axis fault
                                                callback.receiveErrorgetMsg(f);
                                            } catch (org.apache.axis2.AxisFault e) {
                                                // we cannot intantiate the class - throw the original Axis fault
                                                callback.receiveErrorgetMsg(f);
                                            }
                                        } else {
                                            callback.receiveErrorgetMsg(f);
                                        }
                                    } else {
                                        callback.receiveErrorgetMsg(f);
                                    }
                                } else {
                                    callback.receiveErrorgetMsg(error);
                                }
                            }

                            public void onFault(org.apache.axis2.context.MessageContext faultContext) {
                                org.apache.axis2.AxisFault fault = org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(faultContext);
                                onError(fault);
                            }

                            public void onComplete() {
                                try {
                                    _messageContext.getTransportOut().getSender().cleanup(_messageContext);
                                } catch (org.apache.axis2.AxisFault axisFault) {
                                    callback.receiveErrorgetMsg(axisFault);
                                }
                            }
                });
                       

          org.apache.axis2.util.CallbackReceiver _callbackReceiver = null;
        if ( _operations[0].getMessageReceiver()==null &&  _operationClient.getOptions().isUseSeparateListener()) {
           _callbackReceiver = new org.apache.axis2.util.CallbackReceiver();
          _operations[0].setMessageReceiver(
                    _callbackReceiver);
        }

           //execute the operation client
           _operationClient.execute(false);

                    }
               


       /**
        *  A utility method that copies the namepaces from the SOAPEnvelope
        */
       private java.util.Map getEnvelopeNamespaces(org.apache.axiom.soap.SOAPEnvelope env){
        java.util.Map returnMap = new java.util.HashMap();
        java.util.Iterator namespaceIterator = env.getAllDeclaredNamespaces();
        while (namespaceIterator.hasNext()) {
            org.apache.axiom.om.OMNamespace ns = (org.apache.axiom.om.OMNamespace) namespaceIterator.next();
            returnMap.put(ns.getPrefix(),ns.getNamespaceURI());
        }
       return returnMap;
    }

   
   
    private javax.xml.namespace.QName[] opNameArray = null;
    private boolean optimizeContent(javax.xml.namespace.QName opName) {
       

        if (opNameArray == null) {
            return false;
        }
        for (int i = 0; i < opNameArray.length; i++) {
            if (opName.equals(opNameArray[i])) {
                return true;  
            }
        }
        return false;
    }
     //http://16.3.30.181:8080/test_server/services/ReturnMsg.ReturnMsgHttpSoap12Endpoint/
        public static class GetMsg
        implements org.apache.axis2.databinding.ADBBean{
       
                public static final javax.xml.namespace.QName MY_QNAME = new javax.xml.namespace.QName(
                "http://server.sungwon.pe.kr",
                "getMsg",
                "ns1");

           

        private static java.lang.String generatePrefix(java.lang.String namespace) {
            if(namespace.equals("http://server.sungwon.pe.kr")){
                return "ns1";
            }
            return org.apache.axis2.databinding.utils.BeanUtil.getUniquePrefix();
        }

       

                        /**
                        * field for Msg
                        */

                       
                                    protected java.lang.String localMsg ;
                               
                           /*  This tracker boolean wil be used to detect whether the user called the set method
                          *   for this attribute. It will be used to determine whether to include this field
                           *   in the serialized XML
                           */
                           protected boolean localMsgTracker = false ;
                          

                           /**
                           * Auto generated getter method
                           * @return java.lang.String
                           */
                           public  java.lang.String getMsg(){
                               return localMsg;
                           }

                          
                       
                            /**
                               * Auto generated setter method
                               * @param param Msg
                               */
                               public void setMsg(java.lang.String param){
                           
                                       if (param != null){
                                          //update the setting tracker
                                          localMsgTracker = true;
                                       } else {
                                          localMsgTracker = true;
                                             
                                       }
                                  
                                            this.localMsg=param;
                                   

                               }
                           

     /**
     * isReaderMTOMAware
     * @return true if the reader supports MTOM
     */
   public static boolean isReaderMTOMAware(javax.xml.stream.XMLStreamReader reader) {
        boolean isReaderMTOMAware = false;
       
        try{
          isReaderMTOMAware = java.lang.Boolean.TRUE.equals(reader.getProperty(org.apache.axiom.om.OMConstants.IS_DATA_HANDLERS_AWARE));
        }catch(java.lang.IllegalArgumentException e){
          isReaderMTOMAware = false;
        }
        return isReaderMTOMAware;
   }
    
    
        /**
        *
        * @param parentQName
        * @param factory
        * @return org.apache.axiom.om.OMElement
        */
       public org.apache.axiom.om.OMElement getOMElement (
               final javax.xml.namespace.QName parentQName,
               final org.apache.axiom.om.OMFactory factory) throws org.apache.axis2.databinding.ADBException{


       
                org.apache.axiom.om.OMDataSource dataSource =
                       new org.apache.axis2.databinding.ADBDataSource(this,MY_QNAME){

                 public void serialize(org.apache.axis2.databinding.utils.writer.MTOMAwareXMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException {
                       GetMsg.this.serialize(MY_QNAME,factory,xmlWriter);
                 }
               };
               return new org.apache.axiom.om.impl.llom.OMSourcedElementImpl(
               MY_QNAME,factory,dataSource);
           
       }

         public void serialize(final javax.xml.namespace.QName parentQName,
                                       final org.apache.axiom.om.OMFactory factory,
                                       org.apache.axis2.databinding.utils.writer.MTOMAwareXMLStreamWriter xmlWriter)
                                throws javax.xml.stream.XMLStreamException, org.apache.axis2.databinding.ADBException{
                           serialize(parentQName,factory,xmlWriter,false);
         }

         public void serialize(final javax.xml.namespace.QName parentQName,
                               final org.apache.axiom.om.OMFactory factory,
                               org.apache.axis2.databinding.utils.writer.MTOMAwareXMLStreamWriter xmlWriter,
                               boolean serializeType)
            throws javax.xml.stream.XMLStreamException, org.apache.axis2.databinding.ADBException{
           
               


                java.lang.String prefix = null;
                java.lang.String namespace = null;
               

                    prefix = parentQName.getPrefix();
                    namespace = parentQName.getNamespaceURI();

                    if ((namespace != null) && (namespace.trim().length() > 0)) {
                        java.lang.String writerPrefix = xmlWriter.getPrefix(namespace);
                        if (writerPrefix != null) {
                            xmlWriter.writeStartElement(namespace, parentQName.getLocalPart());
                        } else {
                            if (prefix == null) {
                                prefix = generatePrefix(namespace);
                            }

                            xmlWriter.writeStartElement(prefix, parentQName.getLocalPart(), namespace);
                            xmlWriter.writeNamespace(prefix, namespace);
                            xmlWriter.setPrefix(prefix, namespace);
                        }
                    } else {
                        xmlWriter.writeStartElement(parentQName.getLocalPart());
                    }
               
                  if (serializeType){
              

                   java.lang.String namespacePrefix = registerPrefix(xmlWriter,"http://server.sungwon.pe.kr");
                   if ((namespacePrefix != null) && (namespacePrefix.trim().length() > 0)){
                       writeAttribute("xsi","http://www.w3.org/2001/XMLSchema-instance","type",
                           namespacePrefix+":getMsg",
                           xmlWriter);
                   } else {
                       writeAttribute("xsi","http://www.w3.org/2001/XMLSchema-instance","type",
                           "getMsg",
                           xmlWriter);
                   }

              
                   }
                if (localMsgTracker){
                                    namespace = "http://server.sungwon.pe.kr";
                                    if (! namespace.equals("")) {
                                        prefix = xmlWriter.getPrefix(namespace);

                                        if (prefix == null) {
                                            prefix = generatePrefix(namespace);

                                            xmlWriter.writeStartElement(prefix,"msg", namespace);
                                            xmlWriter.writeNamespace(prefix, namespace);
                                            xmlWriter.setPrefix(prefix, namespace);

                                        } else {
                                            xmlWriter.writeStartElement(namespace,"msg");
                                        }

                                    } else {
                                        xmlWriter.writeStartElement("msg");
                                    }
                               

                                          if (localMsg==null){
                                              // write the nil attribute
                                             
                                                     writeAttribute("xsi","http://www.w3.org/2001/XMLSchema-instance","nil","1",xmlWriter);
                                                 
                                          }else{

                                       
                                                   xmlWriter.writeCharacters(localMsg);
                                           
                                          }
                                   
                                   xmlWriter.writeEndElement();
                             }
                    xmlWriter.writeEndElement();
              

        }

         /**
          * Util method to write an attribute with the ns prefix
          */
          private void writeAttribute(java.lang.String prefix,java.lang.String namespace,java.lang.String attName,
                                      java.lang.String attValue,javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException{
              if (xmlWriter.getPrefix(namespace) == null) {
                       xmlWriter.writeNamespace(prefix, namespace);
                       xmlWriter.setPrefix(prefix, namespace);

              }

              xmlWriter.writeAttribute(namespace,attName,attValue);

         }

        /**
          * Util method to write an attribute without the ns prefix
          */
          private void writeAttribute(java.lang.String namespace,java.lang.String attName,
                                      java.lang.String attValue,javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException{
                if (namespace.equals(""))
              {
                  xmlWriter.writeAttribute(attName,attValue);
              }
              else
              {
                  registerPrefix(xmlWriter, namespace);
                  xmlWriter.writeAttribute(namespace,attName,attValue);
              }
          }


           /**
             * Util method to write an attribute without the ns prefix
             */
            private void writeQNameAttribute(java.lang.String namespace, java.lang.String attName,
                                             javax.xml.namespace.QName qname, javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException {

                java.lang.String attributeNamespace = qname.getNamespaceURI();
                java.lang.String attributePrefix = xmlWriter.getPrefix(attributeNamespace);
                if (attributePrefix == null) {
                    attributePrefix = registerPrefix(xmlWriter, attributeNamespace);
                }
                java.lang.String attributeValue;
                if (attributePrefix.trim().length() > 0) {
                    attributeValue = attributePrefix + ":" + qname.getLocalPart();
                } else {
                    attributeValue = qname.getLocalPart();
                }

                if (namespace.equals("")) {
                    xmlWriter.writeAttribute(attName, attributeValue);
                } else {
                    registerPrefix(xmlWriter, namespace);
                    xmlWriter.writeAttribute(namespace, attName, attributeValue);
                }
            }
        /**
         *  method to handle Qnames
         */

        private void writeQName(javax.xml.namespace.QName qname,
                                javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException {
            java.lang.String namespaceURI = qname.getNamespaceURI();
            if (namespaceURI != null) {
                java.lang.String prefix = xmlWriter.getPrefix(namespaceURI);
                if (prefix == null) {
                    prefix = generatePrefix(namespaceURI);
                    xmlWriter.writeNamespace(prefix, namespaceURI);
                    xmlWriter.setPrefix(prefix,namespaceURI);
                }

                if (prefix.trim().length() > 0){
                    xmlWriter.writeCharacters(prefix + ":" + org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qname));
                } else {
                    // i.e this is the default namespace
                    xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qname));
                }

            } else {
                xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qname));
            }
        }

        private void writeQNames(javax.xml.namespace.QName[] qnames,
                                 javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException {

            if (qnames != null) {
                // we have to store this data until last moment since it is not possible to write any
                // namespace data after writing the charactor data
                java.lang.StringBuffer stringToWrite = new java.lang.StringBuffer();
                java.lang.String namespaceURI = null;
                java.lang.String prefix = null;

                for (int i = 0; i < qnames.length; i++) {
                    if (i > 0) {
                        stringToWrite.append(" ");
                    }
                    namespaceURI = qnames[i].getNamespaceURI();
                    if (namespaceURI != null) {
                        prefix = xmlWriter.getPrefix(namespaceURI);
                        if ((prefix == null) || (prefix.length() == 0)) {
                            prefix = generatePrefix(namespaceURI);
                            xmlWriter.writeNamespace(prefix, namespaceURI);
                            xmlWriter.setPrefix(prefix,namespaceURI);
                        }

                        if (prefix.trim().length() > 0){
                            stringToWrite.append(prefix).append(":").append(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qnames[i]));
                        } else {
                            stringToWrite.append(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qnames[i]));
                        }
                    } else {
                        stringToWrite.append(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qnames[i]));
                    }
                }
                xmlWriter.writeCharacters(stringToWrite.toString());
            }

        }


         /**
         * Register a namespace prefix
         */
         private java.lang.String registerPrefix(javax.xml.stream.XMLStreamWriter xmlWriter, java.lang.String namespace) throws javax.xml.stream.XMLStreamException {
                java.lang.String prefix = xmlWriter.getPrefix(namespace);

                if (prefix == null) {
                    prefix = generatePrefix(namespace);

                    while (xmlWriter.getNamespaceContext().getNamespaceURI(prefix) != null) {
                        prefix = org.apache.axis2.databinding.utils.BeanUtil.getUniquePrefix();
                    }

                    xmlWriter.writeNamespace(prefix, namespace);
                    xmlWriter.setPrefix(prefix, namespace);
                }

                return prefix;
            }


 
        /**
        * databinding method to get an XML representation of this object
        *
        */
        public javax.xml.stream.XMLStreamReader getPullParser(javax.xml.namespace.QName qName)
                    throws org.apache.axis2.databinding.ADBException{


       
                 java.util.ArrayList elementList = new java.util.ArrayList();
                 java.util.ArrayList attribList = new java.util.ArrayList();

                 if (localMsgTracker){
                                      elementList.add(new javax.xml.namespace.QName("http://server.sungwon.pe.kr",
                                                                      "msg"));
                                
                                         elementList.add(localMsg==null?null:
                                         org.apache.axis2.databinding.utils.ConverterUtil.convertToString(localMsg));
                                    }

                return new org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl(qName, elementList.toArray(), attribList.toArray());
           
           

        }

 

     /**
      *  Factory class that keeps the parse method
      */
    public static class Factory{

       
       

        /**
        * static method to create the object
        * Precondition:  If this object is an element, the current or next start element starts this object and any intervening reader events are ignorable
        *                If this object is not an element, it is a complex type and the reader is at the event just after the outer start element
        * Postcondition: If this object is an element, the reader is positioned at its end element
        *                If this object is a complex type, the reader is positioned at the end element of its outer element
        */
        public static GetMsg parse(javax.xml.stream.XMLStreamReader reader) throws java.lang.Exception{
            GetMsg object =
                new GetMsg();

            int event;
            java.lang.String nillableValue = null;
            java.lang.String prefix ="";
            java.lang.String namespaceuri ="";
            try {
               
                while (!reader.isStartElement() && !reader.isEndElement())
                    reader.next();

               
                if (reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance","type")!=null){
                  java.lang.String fullTypeName = reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance",
                        "type");
                  if (fullTypeName!=null){
                    java.lang.String nsPrefix = null;
                    if (fullTypeName.indexOf(":") > -1){
                        nsPrefix = fullTypeName.substring(0,fullTypeName.indexOf(":"));
                    }
                    nsPrefix = nsPrefix==null?"":nsPrefix;

                    java.lang.String type = fullTypeName.substring(fullTypeName.indexOf(":")+1);
                   
                            if (!"getMsg".equals(type)){
                                //find namespace for the prefix
                                java.lang.String nsUri = reader.getNamespaceContext().getNamespaceURI(nsPrefix);
                                return (GetMsg)ExtensionMapper.getTypeObject(
                                     nsUri,type,reader);
                              }
                       

                  }
               

                }

               

               
                // Note all attributes that were handled. Used to differ normal attributes
                // from anyAttributes.
                java.util.Vector handledAttributes = new java.util.Vector();
               

                
                   
                    reader.next();
               
                                   
                                    while (!reader.isStartElement() && !reader.isEndElement()) reader.next();
                               
                                    if (reader.isStartElement() && new javax.xml.namespace.QName("http://server.sungwon.pe.kr","msg").equals(reader.getName())){
                               
                                       nillableValue = reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance","nil");
                                       if (!"true".equals(nillableValue) && !"1".equals(nillableValue)){
                                   
                                    java.lang.String content = reader.getElementText();
                                   
                                              object.setMsg(
                                                    org.apache.axis2.databinding.utils.ConverterUtil.convertToString(content));
                                           
                                       } else {
                                          
                                          
                                           reader.getElementText(); // throw away text nodes if any.
                                       }
                                     
                                        reader.next();
                                   
                              }  // End of if for expected property start element
                               
                                    else {
                                       
                                    }
                                 
                            while (!reader.isStartElement() && !reader.isEndElement())
                                reader.next();
                           
                                if (reader.isStartElement())
                                // A start element we are not expecting indicates a trailing invalid property
                                throw new org.apache.axis2.databinding.ADBException("Unexpected subelement " + reader.getLocalName());
                           



            } catch (javax.xml.stream.XMLStreamException e) {
                throw new java.lang.Exception(e);
            }

            return object;
        }

        }//end of factory class

       

        }
          
         
        public static class ExtensionMapper{

          public static java.lang.Object getTypeObject(java.lang.String namespaceURI,
                                                       java.lang.String typeName,
                                                       javax.xml.stream.XMLStreamReader reader) throws java.lang.Exception{

             
             throw new org.apache.axis2.databinding.ADBException("Unsupported type " + namespaceURI + " " + typeName);
          }

        }
   
        public static class GetMsgResponse
        implements org.apache.axis2.databinding.ADBBean{
       
                public static final javax.xml.namespace.QName MY_QNAME = new javax.xml.namespace.QName(
                "http://server.sungwon.pe.kr",
                "getMsgResponse",
                "ns1");

           

        private static java.lang.String generatePrefix(java.lang.String namespace) {
            if(namespace.equals("http://server.sungwon.pe.kr")){
                return "ns1";
            }
            return org.apache.axis2.databinding.utils.BeanUtil.getUniquePrefix();
        }

       

                        /**
                        * field for _return
                        */

                       
                                    protected java.lang.String local_return ;
                               
                           /*  This tracker boolean wil be used to detect whether the user called the set method
                          *   for this attribute. It will be used to determine whether to include this field
                           *   in the serialized XML
                           */
                           protected boolean local_returnTracker = false ;
                          

                           /**
                           * Auto generated getter method
                           * @return java.lang.String
                           */
                           public  java.lang.String get_return(){
                               return local_return;
                           }

                          
                       
                            /**
                               * Auto generated setter method
                               * @param param _return
                               */
                               public void set_return(java.lang.String param){
                           
                                       if (param != null){
                                          //update the setting tracker
                                          local_returnTracker = true;
                                       } else {
                                          local_returnTracker = true;
                                             
                                       }
                                  
                                            this.local_return=param;
                                   

                               }
                           

     /**
     * isReaderMTOMAware
     * @return true if the reader supports MTOM
     */
   public static boolean isReaderMTOMAware(javax.xml.stream.XMLStreamReader reader) {
        boolean isReaderMTOMAware = false;
       
        try{
          isReaderMTOMAware = java.lang.Boolean.TRUE.equals(reader.getProperty(org.apache.axiom.om.OMConstants.IS_DATA_HANDLERS_AWARE));
        }catch(java.lang.IllegalArgumentException e){
          isReaderMTOMAware = false;
        }
        return isReaderMTOMAware;
   }
    
    
        /**
        *
        * @param parentQName
        * @param factory
        * @return org.apache.axiom.om.OMElement
        */
       public org.apache.axiom.om.OMElement getOMElement (
               final javax.xml.namespace.QName parentQName,
               final org.apache.axiom.om.OMFactory factory) throws org.apache.axis2.databinding.ADBException{


       
                org.apache.axiom.om.OMDataSource dataSource =
                       new org.apache.axis2.databinding.ADBDataSource(this,MY_QNAME){

                 public void serialize(org.apache.axis2.databinding.utils.writer.MTOMAwareXMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException {
                       GetMsgResponse.this.serialize(MY_QNAME,factory,xmlWriter);
                 }
               };
               return new org.apache.axiom.om.impl.llom.OMSourcedElementImpl(
               MY_QNAME,factory,dataSource);
           
       }

         public void serialize(final javax.xml.namespace.QName parentQName,
                                       final org.apache.axiom.om.OMFactory factory,
                                       org.apache.axis2.databinding.utils.writer.MTOMAwareXMLStreamWriter xmlWriter)
                                throws javax.xml.stream.XMLStreamException, org.apache.axis2.databinding.ADBException{
                           serialize(parentQName,factory,xmlWriter,false);
         }

         public void serialize(final javax.xml.namespace.QName parentQName,
                               final org.apache.axiom.om.OMFactory factory,
                               org.apache.axis2.databinding.utils.writer.MTOMAwareXMLStreamWriter xmlWriter,
                               boolean serializeType)
            throws javax.xml.stream.XMLStreamException, org.apache.axis2.databinding.ADBException{
           
               


                java.lang.String prefix = null;
                java.lang.String namespace = null;
               

                    prefix = parentQName.getPrefix();
                    namespace = parentQName.getNamespaceURI();

                    if ((namespace != null) && (namespace.trim().length() > 0)) {
                        java.lang.String writerPrefix = xmlWriter.getPrefix(namespace);
                        if (writerPrefix != null) {
                            xmlWriter.writeStartElement(namespace, parentQName.getLocalPart());
                        } else {
                            if (prefix == null) {
                                prefix = generatePrefix(namespace);
                            }

                            xmlWriter.writeStartElement(prefix, parentQName.getLocalPart(), namespace);
                            xmlWriter.writeNamespace(prefix, namespace);
                            xmlWriter.setPrefix(prefix, namespace);
                        }
                    } else {
                        xmlWriter.writeStartElement(parentQName.getLocalPart());
                    }
               
                  if (serializeType){
              

                   java.lang.String namespacePrefix = registerPrefix(xmlWriter,"http://server.sungwon.pe.kr");
                   if ((namespacePrefix != null) && (namespacePrefix.trim().length() > 0)){
                       writeAttribute("xsi","http://www.w3.org/2001/XMLSchema-instance","type",
                           namespacePrefix+":getMsgResponse",
                           xmlWriter);
                   } else {
                       writeAttribute("xsi","http://www.w3.org/2001/XMLSchema-instance","type",
                           "getMsgResponse",
                           xmlWriter);
                   }

              
                   }
                if (local_returnTracker){
                                    namespace = "http://server.sungwon.pe.kr";
                                    if (! namespace.equals("")) {
                                        prefix = xmlWriter.getPrefix(namespace);

                                        if (prefix == null) {
                                            prefix = generatePrefix(namespace);

                                            xmlWriter.writeStartElement(prefix,"return", namespace);
                                            xmlWriter.writeNamespace(prefix, namespace);
                                            xmlWriter.setPrefix(prefix, namespace);

                                        } else {
                                            xmlWriter.writeStartElement(namespace,"return");
                                        }

                                    } else {
                                        xmlWriter.writeStartElement("return");
                                    }
                               

                                          if (local_return==null){
                                              // write the nil attribute
                                             
                                                     writeAttribute("xsi","http://www.w3.org/2001/XMLSchema-instance","nil","1",xmlWriter);
                                                 
                                          }else{

                                       
                                                   xmlWriter.writeCharacters(local_return);
                                           
                                          }
                                   
                                   xmlWriter.writeEndElement();
                             }
                    xmlWriter.writeEndElement();
              

        }

         /**
          * Util method to write an attribute with the ns prefix
          */
          private void writeAttribute(java.lang.String prefix,java.lang.String namespace,java.lang.String attName,
                                      java.lang.String attValue,javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException{
              if (xmlWriter.getPrefix(namespace) == null) {
                       xmlWriter.writeNamespace(prefix, namespace);
                       xmlWriter.setPrefix(prefix, namespace);

              }

              xmlWriter.writeAttribute(namespace,attName,attValue);

         }

        /**
          * Util method to write an attribute without the ns prefix
          */
          private void writeAttribute(java.lang.String namespace,java.lang.String attName,
                                      java.lang.String attValue,javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException{
                if (namespace.equals(""))
              {
                  xmlWriter.writeAttribute(attName,attValue);
              }
              else
              {
                  registerPrefix(xmlWriter, namespace);
                  xmlWriter.writeAttribute(namespace,attName,attValue);
              }
          }


           /**
             * Util method to write an attribute without the ns prefix
             */
            private void writeQNameAttribute(java.lang.String namespace, java.lang.String attName,
                                             javax.xml.namespace.QName qname, javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException {

                java.lang.String attributeNamespace = qname.getNamespaceURI();
                java.lang.String attributePrefix = xmlWriter.getPrefix(attributeNamespace);
                if (attributePrefix == null) {
                    attributePrefix = registerPrefix(xmlWriter, attributeNamespace);
                }
                java.lang.String attributeValue;
                if (attributePrefix.trim().length() > 0) {
                    attributeValue = attributePrefix + ":" + qname.getLocalPart();
                } else {
                    attributeValue = qname.getLocalPart();
                }

                if (namespace.equals("")) {
                    xmlWriter.writeAttribute(attName, attributeValue);
                } else {
                    registerPrefix(xmlWriter, namespace);
                    xmlWriter.writeAttribute(namespace, attName, attributeValue);
                }
            }
        /**
         *  method to handle Qnames
         */

        private void writeQName(javax.xml.namespace.QName qname,
                                javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException {
            java.lang.String namespaceURI = qname.getNamespaceURI();
            if (namespaceURI != null) {
                java.lang.String prefix = xmlWriter.getPrefix(namespaceURI);
                if (prefix == null) {
                    prefix = generatePrefix(namespaceURI);
                    xmlWriter.writeNamespace(prefix, namespaceURI);
                    xmlWriter.setPrefix(prefix,namespaceURI);
                }

                if (prefix.trim().length() > 0){
                    xmlWriter.writeCharacters(prefix + ":" + org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qname));
                } else {
                    // i.e this is the default namespace
                    xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qname));
                }

            } else {
                xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qname));
            }
        }

        private void writeQNames(javax.xml.namespace.QName[] qnames,
                                 javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException {

            if (qnames != null) {
                // we have to store this data until last moment since it is not possible to write any
                // namespace data after writing the charactor data
                java.lang.StringBuffer stringToWrite = new java.lang.StringBuffer();
                java.lang.String namespaceURI = null;
                java.lang.String prefix = null;

                for (int i = 0; i < qnames.length; i++) {
                    if (i > 0) {
                        stringToWrite.append(" ");
                    }
                    namespaceURI = qnames[i].getNamespaceURI();
                    if (namespaceURI != null) {
                        prefix = xmlWriter.getPrefix(namespaceURI);
                        if ((prefix == null) || (prefix.length() == 0)) {
                            prefix = generatePrefix(namespaceURI);
                            xmlWriter.writeNamespace(prefix, namespaceURI);
                            xmlWriter.setPrefix(prefix,namespaceURI);
                        }

                        if (prefix.trim().length() > 0){
                            stringToWrite.append(prefix).append(":").append(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qnames[i]));
                        } else {
                            stringToWrite.append(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qnames[i]));
                        }
                    } else {
                        stringToWrite.append(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(qnames[i]));
                    }
                }
                xmlWriter.writeCharacters(stringToWrite.toString());
            }

        }


         /**
         * Register a namespace prefix
         */
         private java.lang.String registerPrefix(javax.xml.stream.XMLStreamWriter xmlWriter, java.lang.String namespace) throws javax.xml.stream.XMLStreamException {
                java.lang.String prefix = xmlWriter.getPrefix(namespace);

                if (prefix == null) {
                    prefix = generatePrefix(namespace);

                    while (xmlWriter.getNamespaceContext().getNamespaceURI(prefix) != null) {
                        prefix = org.apache.axis2.databinding.utils.BeanUtil.getUniquePrefix();
                    }

                    xmlWriter.writeNamespace(prefix, namespace);
                    xmlWriter.setPrefix(prefix, namespace);
                }

                return prefix;
            }


 
        /**
        * databinding method to get an XML representation of this object
        *
        */
        public javax.xml.stream.XMLStreamReader getPullParser(javax.xml.namespace.QName qName)
                    throws org.apache.axis2.databinding.ADBException{


       
                 java.util.ArrayList elementList = new java.util.ArrayList();
                 java.util.ArrayList attribList = new java.util.ArrayList();

                 if (local_returnTracker){
                                      elementList.add(new javax.xml.namespace.QName("http://server.sungwon.pe.kr",
                                                                      "return"));
                                
                                         elementList.add(local_return==null?null:
                                         org.apache.axis2.databinding.utils.ConverterUtil.convertToString(local_return));
                                    }

                return new org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl(qName, elementList.toArray(), attribList.toArray());
           
           

        }

 

     /**
      *  Factory class that keeps the parse method
      */
    public static class Factory{

       
       

        /**
        * static method to create the object
        * Precondition:  If this object is an element, the current or next start element starts this object and any intervening reader events are ignorable
        *                If this object is not an element, it is a complex type and the reader is at the event just after the outer start element
        * Postcondition: If this object is an element, the reader is positioned at its end element
        *                If this object is a complex type, the reader is positioned at the end element of its outer element
        */
        public static GetMsgResponse parse(javax.xml.stream.XMLStreamReader reader) throws java.lang.Exception{
            GetMsgResponse object =
                new GetMsgResponse();

            int event;
            java.lang.String nillableValue = null;
            java.lang.String prefix ="";
            java.lang.String namespaceuri ="";
            try {
               
                while (!reader.isStartElement() && !reader.isEndElement())
                    reader.next();

               
                if (reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance","type")!=null){
                  java.lang.String fullTypeName = reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance",
                        "type");
                  if (fullTypeName!=null){
                    java.lang.String nsPrefix = null;
                    if (fullTypeName.indexOf(":") > -1){
                        nsPrefix = fullTypeName.substring(0,fullTypeName.indexOf(":"));
                    }
                    nsPrefix = nsPrefix==null?"":nsPrefix;

                    java.lang.String type = fullTypeName.substring(fullTypeName.indexOf(":")+1);
                   
                            if (!"getMsgResponse".equals(type)){
                                //find namespace for the prefix
                                java.lang.String nsUri = reader.getNamespaceContext().getNamespaceURI(nsPrefix);
                                return (GetMsgResponse)ExtensionMapper.getTypeObject(
                                     nsUri,type,reader);
                              }
                       

                  }
               

                }

               

               
                // Note all attributes that were handled. Used to differ normal attributes
                // from anyAttributes.
                java.util.Vector handledAttributes = new java.util.Vector();
               

                
                   
                    reader.next();
               
                                   
                                    while (!reader.isStartElement() && !reader.isEndElement()) reader.next();
                               
                                    if (reader.isStartElement() && new javax.xml.namespace.QName("http://server.sungwon.pe.kr","return").equals(reader.getName())){
                               
                                       nillableValue = reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance","nil");
                                       if (!"true".equals(nillableValue) && !"1".equals(nillableValue)){
                                   
                                    java.lang.String content = reader.getElementText();
                                   
                                              object.set_return(
                                                    org.apache.axis2.databinding.utils.ConverterUtil.convertToString(content));
                                           
                                       } else {
                                          
                                          
                                           reader.getElementText(); // throw away text nodes if any.
                                       }
                                     
                                        reader.next();
                                   
                              }  // End of if for expected property start element
                               
                                    else {
                                       
                                    }
                                 
                            while (!reader.isStartElement() && !reader.isEndElement())
                                reader.next();
                           
                                if (reader.isStartElement())
                                // A start element we are not expecting indicates a trailing invalid property
                                throw new org.apache.axis2.databinding.ADBException("Unexpected subelement " + reader.getLocalName());
                           



            } catch (javax.xml.stream.XMLStreamException e) {
                throw new java.lang.Exception(e);
            }

            return object;
        }

        }//end of factory class

       

        }
          
         
            private  org.apache.axiom.om.OMElement  toOM(kr.pe.sungwon.server.ReturnMsgStub.GetMsg param, boolean optimizeContent)
            throws org.apache.axis2.AxisFault {

           
                        try{
                             return param.getOMElement(kr.pe.sungwon.server.ReturnMsgStub.GetMsg.MY_QNAME,
                                          org.apache.axiom.om.OMAbstractFactory.getOMFactory());
                        } catch(org.apache.axis2.databinding.ADBException e){
                            throw org.apache.axis2.AxisFault.makeFault(e);
                        }
                   

            }
       
            private  org.apache.axiom.om.OMElement  toOM(kr.pe.sungwon.server.ReturnMsgStub.GetMsgResponse param, boolean optimizeContent)
            throws org.apache.axis2.AxisFault {

           
                        try{
                             return param.getOMElement(kr.pe.sungwon.server.ReturnMsgStub.GetMsgResponse.MY_QNAME,
                                          org.apache.axiom.om.OMAbstractFactory.getOMFactory());
                        } catch(org.apache.axis2.databinding.ADBException e){
                            throw org.apache.axis2.AxisFault.makeFault(e);
                        }
                   

            }
       
                                   
                                        private  org.apache.axiom.soap.SOAPEnvelope toEnvelope(org.apache.axiom.soap.SOAPFactory factory, kr.pe.sungwon.server.ReturnMsgStub.GetMsg param, boolean optimizeContent)
                                        throws org.apache.axis2.AxisFault{

                                            
                                                    try{

                                                            org.apache.axiom.soap.SOAPEnvelope emptyEnvelope = factory.getDefaultEnvelope();
                                                            emptyEnvelope.getBody().addChild(param.getOMElement(kr.pe.sungwon.server.ReturnMsgStub.GetMsg.MY_QNAME,factory));
                                                            return emptyEnvelope;
                                                        } catch(org.apache.axis2.databinding.ADBException e){
                                                            throw org.apache.axis2.AxisFault.makeFault(e);
                                                        }
                                               

                                        }
                               
                            
                             /* methods to provide back word compatibility */

                            


        /**
        *  get the default envelope
        */
        private org.apache.axiom.soap.SOAPEnvelope toEnvelope(org.apache.axiom.soap.SOAPFactory factory){
        return factory.getDefaultEnvelope();
        }


        private  java.lang.Object fromOM(
        org.apache.axiom.om.OMElement param,
        java.lang.Class type,
        java.util.Map extraNamespaces) throws org.apache.axis2.AxisFault{

        try {
       
                if (kr.pe.sungwon.server.ReturnMsgStub.GetMsg.class.equals(type)){
               
                           return kr.pe.sungwon.server.ReturnMsgStub.GetMsg.Factory.parse(param.getXMLStreamReaderWithoutCaching());
                   

                }
          
                if (kr.pe.sungwon.server.ReturnMsgStub.GetMsgResponse.class.equals(type)){
               
                           return kr.pe.sungwon.server.ReturnMsgStub.GetMsgResponse.Factory.parse(param.getXMLStreamReaderWithoutCaching());
                   

                }
          
        } catch (java.lang.Exception e) {
        throw org.apache.axis2.AxisFault.makeFault(e);
        }
           return null;
        }



   
   }

 

 


/**
 * ReturnMsgCallbackHandler.java
 *
 * This file was auto-generated from WSDL
 * by the Apache Axis2 version: 1.5.1  Built on : Oct 19, 2009 (10:59:00 EDT)
 */

    package kr.pe.sungwon.server;

    /**
     *  ReturnMsgCallbackHandler Callback class, Users can extend this class and implement
     *  their own receiveResult and receiveError methods.
     */
    public abstract class ReturnMsgCallbackHandler{



    protected Object clientData;

    /**
    * User can pass in any object that needs to be accessed once the NonBlocking
    * Web service call is finished and appropriate method of this CallBack is called.
    * @param clientData Object mechanism by which the user can pass in user data
    * that will be avilable at the time this callback is called.
    */
    public ReturnMsgCallbackHandler(Object clientData){
        this.clientData = clientData;
    }

    /**
    * Please use this constructor if you don't want to set any clientData
    */
    public ReturnMsgCallbackHandler(){
        this.clientData = null;
    }

    /**
     * Get the client data
     */

     public Object getClientData() {
        return clientData;
     }

       
           /**
            * auto generated Axis2 call back method for getMsg method
            * override this method for handling normal response from getMsg operation
            */
           public void receiveResultgetMsg(
                    kr.pe.sungwon.server.ReturnMsgStub.GetMsgResponse result
                        ) {
           }

          /**
           * auto generated Axis2 Error handler
           * override this method for handling error response from getMsg operation
           */
            public void receiveErrorgetMsg(java.lang.Exception e) {
            }
               


    }

 

 

package kr.pe.sungwon.client;

import java.rmi.RemoteException;


import kr.pe.sungwon.server.ReturnMsgStub;

public class SayMsg {

    /**
     * @param args
     * @throws RemoteException
     */
    public static void main(String[] args) throws RemoteException {
        // TODO Auto-generated method stub
       
        SayMsg sm = new SayMsg();
       
        System.out.println(sm.invoke("test"));
    }
   
    public String invoke(String txt) throws RemoteException
    {
        String innerMsg = null;
       
        ReturnMsgStub stub = new ReturnMsgStub();
   
        ReturnMsgStub.GetMsg req = new ReturnMsgStub.GetMsg();
       
        req.setMsg(txt);
       
        ReturnMsgStub.GetMsgResponse response = stub.getMsg(req);
       
        innerMsg = response.get_return();
               
        return innerMsg;
    }
}

 

Posted by sungwonpekr
2013. 5. 22. 11:22

server side

 

package kr.pe.sungwon.server;

public class ReturnMsg {
   
    public String getMsg(String msg)
    {
        return msg;
    }

}

 

 

client side

 

build.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<project default="wsimport">
    <target name="wsimport">
        <exec executable="c:/Java/jdk1.6.0_18/bin/wsimport">
            <arg line="-keep -s ./src -p kr.pe.sungwon.client.service      
                -d ./bin http://localhost:8080/test_server/services/ReturnMsg?wsdl"/>
        </exec>
    </target>
</project>

 

빌 드 후 생성 파일 목록

GetMsg.java

GetMsgResponse.java

ObjectFactory.java

package-info.java

ReturnMsg.java

ReturnMsgPortType.java

 

 

# SayMsg.java

 

 

package kr.pe.sungwon.client;

import java.rmi.RemoteException;

import kr.pe.sungwon.client.service.ReturnMsg;
import kr.pe.sungwon.client.service.ReturnMsgPortType;

public class SayMsg {

    /**
     * @param args
     * @throws RemoteException
     */
    public static void main(String[] args) throws RemoteException {
        // TODO Auto-generated method stub
       
        SayMsg sm = new SayMsg();
       
        System.out.println(sm.invoke("test"));

    }
   
    public String invoke(String txt) throws RemoteException
    {
        String innerMsg = null;
       
        ReturnMsg rm = new ReturnMsg();
        ReturnMsgPortType rmpt = rm.getReturnMsgHttpSoap11Endpoint();
        innerMsg = rmpt.getMsg(txt);
       
        return innerMsg;
    }
}

 

 

 

Posted by sungwonpekr