blob: 3433800b3297f944d44757636f0b4c6c43029450 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- Generated by Apache Maven Doxia Site Renderer 1.3 at Jun 28, 2015 -->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Apache Axis2 - </title>
<style type="text/css" media="all">
@import url("../css/maven-base.css");
@import url("../css/maven-theme.css");
@import url("../css/site.css");
</style>
<link rel="stylesheet" href="../css/print.css" type="text/css" media="print" />
<meta name="Date-Revision-yyyymmdd" content="20150628" />
<meta http-equiv="Content-Language" content="en" />
</head>
<body class="composite">
<div id="banner">
<a href="http://www.apache.org/" id="bannerLeft">
<img src="http://www.apache.org/images/asf_logo_wide.png" alt="Apache Axis2" />
</a>
<a href=".././" id="bannerRight">
<img src="../images/axis.jpg" alt="Apache Axis2" />
</a>
<div class="clear">
<hr/>
</div>
</div>
<div id="breadcrumbs">
<div class="xleft">
<span id="publishDate">Last Published: 2015-06-28</span>
&nbsp;| <span id="projectVersion">Version: 1.6.3</span>
</div>
<div class="xright"> <a href="../index.html" title="Axis2/Java">Axis2/Java</a>
|
<a href="http://www.apache.org" class="externalLink" title="Apache">Apache</a>
</div>
<div class="clear">
<hr/>
</div>
</div>
<div id="leftColumn">
<div id="navcolumn">
<h5>Axis2/Java</h5>
<ul>
<li class="none">
<a href="../index.html" title="Home">Home</a>
</li>
</ul>
<h5>Downloads</h5>
<ul>
<li class="none">
<a href="../download.cgi" title="Releases">Releases</a>
</li>
<li class="none">
<a href="../modules/index.html" title="Modules">Modules</a>
</li>
<li class="none">
<a href="../tools/index.html" title="Tools">Tools</a>
</li>
</ul>
<h5>Documentation</h5>
<ul>
<li class="none">
<a href="../docs/toc.html" title="Table of Contents">Table of Contents</a>
</li>
<li class="none">
<a href="../docs/installationguide.html" title="Installation Guide">Installation Guide</a>
</li>
<li class="none">
<a href="../docs/quickstartguide.html" title="QuickStart Guide">QuickStart Guide</a>
</li>
<li class="none">
<a href="../docs/userguide.html" title="User Guide">User Guide</a>
</li>
<li class="none">
<a href="../docs/jaxws-guide.html" title="JAXWS Guide">JAXWS Guide</a>
</li>
<li class="none">
<a href="../docs/pojoguide.html" title="POJO Guide">POJO Guide</a>
</li>
<li class="none">
<a href="../docs/spring.html" title="Spring Guide">Spring Guide</a>
</li>
<li class="none">
<a href="../docs/webadminguide.html" title="Web Administrator's Guide">Web Administrator's Guide</a>
</li>
<li class="none">
<a href="../docs/migration.html" title="Migration Guide (from Axis1)">Migration Guide (from Axis1)</a>
</li>
</ul>
<h5>Resources</h5>
<ul>
<li class="none">
<a href="../faq.html" title="FAQ">FAQ</a>
</li>
<li class="none">
<a href="../articles.html" title="Articles">Articles</a>
</li>
<li class="none">
<a href="http://wiki.apache.org/ws/FrontPage/Axis2/" class="externalLink" title="Wiki">Wiki</a>
</li>
<li class="none">
<a href="../refLib.html" title="Reference Library">Reference Library</a>
</li>
<li class="none">
<a href="../api/index.html" title="Online Java Docs">Online Java Docs</a>
</li>
</ul>
<h5>Get Involved</h5>
<ul>
<li class="none">
<a href="../overview.html" title="Overview">Overview</a>
</li>
<li class="none">
<a href="../svn.html" title="Checkout the Source">Checkout the Source</a>
</li>
<li class="none">
<a href="../mail-lists.html" title="Mailing Lists">Mailing Lists</a>
</li>
<li class="none">
<a href="../release-process.html" title="Release Process">Release Process</a>
</li>
<li class="none">
<a href="../guidelines.html" title="Developer Guidelines">Developer Guidelines</a>
</li>
<li class="none">
<a href="../siteHowTo.html" title="Build the Site">Build the Site</a>
</li>
</ul>
<h5>Project Information</h5>
<ul>
<li class="none">
<a href="../team-list.html" title="Project Team">Project Team</a>
</li>
<li class="none">
<a href="../issue-tracking.html" title="Issue Tracking">Issue Tracking</a>
</li>
<li class="none">
<a href="http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/" class="externalLink" title="Source Code">Source Code</a>
</li>
<li class="none">
<a href="../thanks.html" title="Acknowledgements">Acknowledgements</a>
</li>
<li class="none">
<a href="http://www.apache.org/licenses/LICENSE-2.0.html" class="externalLink" title="License">License</a>
</li>
<li class="none">
<a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship">Sponsorship</a>
</li>
<li class="none">
<a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks">Thanks</a>
</li>
<li class="none">
<a href="http://www.apache.org/security/" class="externalLink" title="Security">Security</a>
</li>
</ul>
<a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
<img class="poweredBy" alt="Built by Maven" src="../images/logos/maven-feather.png" />
</a>
</div>
</div>
<div id="bodyColumn">
<div id="contentBox">
<!-- Licensed to the Apache Software Foundation (ASF) under one --><!-- or more contributor license agreements. See the NOTICE file --><!-- distributed with this work for additional information --><!-- regarding copyright ownership. The ASF licenses this file --><!-- to you under the Apache License, Version 2.0 (the --><!-- "License"); you may not use this file except in compliance --><!-- with the License. You may obtain a copy of the License at --><!-- --><!-- http://www.apache.org/licenses/LICENSE-2.0 --><!-- --><!-- Unless required by applicable law or agreed to in writing, --><!-- software distributed under the License is distributed on an --><!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --><!-- KIND, either express or implied. See the License for the --><!-- specific language governing permissions and limitations --><!-- under the License. --><div class="section"><h2>UDP Transport<a name="UDP_Transport"></a></h2><div class="section"><h3><a name="Content">Content</a></h3><ul><li><a href="#UDP_Transport">UDP Transport</a><ul><li><a href="#Content">Content</a></li><li><a href="#Transport_listener">Transport listener</a><ul><li><a href="#Listener_configuration">Listener configuration</a></li><li><a href="#Endpoint_configuration">Endpoint configuration</a></li></ul></li><li><a href="#Transport_sender">Transport sender</a></li><li><a href="#Examples">Examples</a><ul><li><a href="#Enabling_SOAP_over_UDP_at_the_transport_level">Enabling SOAP over UDP at the transport level</a></li></ul></li></ul></li></ul></div><div class="section"><h3><a name="Transport_listener">Transport listener</a></h3><div class="section"><h4><a name="Listener_configuration">Listener configuration</a></h4><p>The UDP transport listener is configured in <tt>axis2.xml</tt> using the following declaration:</p><div class="source"><pre>&lt;transportReceiver name=&quot;udp&quot; class=&quot;org.apache.axis2.transport.udp.UDPListener&quot;/&gt;</pre></div><p>Depending on how the UDP transport is set up, additional parameters may be required inside the <tt>transportReceiver</tt> element (see next section).</p></div><div class="section"><h4><a name="Endpoint_configuration">Endpoint configuration</a></h4><p>Endpoints can be configured both at the transport level and at the service level. Each endpoint opens a local UDP port for listening. UDP packets received on a port that is configured on a service will be pre-dispatched to that service. Packets received by a port that is configured at the transport level need to be dispatched using WS-Addressing or some other mechanism implemented by a dispatcher configured in Axis2.</p><p>Endpoints are configured by adding <tt>parameter</tt> elements to the <tt>transportReceiver</tt> element in <tt>axis2.xml</tt> or to a <tt>service</tt> element in an <tt>services.xml</tt> file. The set of parameters is the same for both scenarios:</p><dl><dt><tt>transport.udp.port</tt> (required)</dt><dd> Specifies the UDP port to bind to.</dd><dt><tt>transport.udp.contentType</tt> (required)</dt><dd> Specifies the content type of the messages received on the endpoint. This parameter is necessary because in contrast to HTTP, the content type information is not part of the information exchanged on the wire.</dd><dt><tt>transport.udp.maxPacketSize</tt> (optional, defaults to 1024)</dt><dd> The maximum UDP packet size.</dd></dl></div></div><div class="section"><h3><a name="Transport_sender">Transport sender</a></h3><p>The UDP transport sender can be enabled in <tt>axis2.xml</tt> using the following declaration:</p><div class="source"><pre>&lt;transportSender name=&quot;udp&quot; class=&quot;org.apache.axis2.transport.udp.UDPSender&quot;/&gt;</pre></div></div><div class="section"><h3><a name="Examples">Examples</a></h3><div class="section"><h4><a name="Enabling_SOAP_over_UDP_at_the_transport_level">Enabling SOAP over UDP at the transport level</a></h4><p>The following declaration in <tt>axis2.xml</tt> enables SOAP over UDP on port 3333 and allows all services (for which UDP is in the list of exposed transports) to receive messages over that port:</p><div class="source"><pre>&lt;transportReceiver name=&quot;udp&quot; class=&quot;org.apache.axis2.transport.udp.UDPListener&quot;&gt;
&lt;parameter name=&quot;transport.udp.port&quot;&gt;3333&lt;/parameter&gt;
&lt;parameter name=&quot;transport.udp.contentType&quot;&gt;text/xml&lt;/parameter&gt;
&lt;parameter name=&quot;transport.udp.maxPacketSize&quot;&gt;4096&lt;/parameter&gt;
&lt;/transportReceiver&gt;</pre></div><p>For this to work, WS-Addressing must be enabled, and messages sent to port 3333 must have the relevant WS-Addressing headers.</p><div class="source"><pre>&lt;module ref=&quot;addressing&quot;/&gt;</pre></div><p>With the configuration shown above, the UDP transport would generate bindings with the following EPR:</p><div class="source"><pre>udp://localhost:3333/axis2/services/Version?contentType=text/xml</pre></div><p>The following example shows a message that can be sent to the Version service over UDP:</p><div class="source"><pre>&lt;SOAP-ENV:Envelope xmlns:SOAP-ENV=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot;
xmlns:wsa=&quot;http://www.w3.org/2005/08/addressing&quot;&gt;
&lt;SOAP-ENV:Header&gt;
&lt;wsa:MessageID&gt;1234&lt;/wsa:MessageID&gt;
&lt;wsa:To&gt;udp://localhost:3333/axis2/services/Version?contentType=text/xml&lt;/wsa:To&gt;
&lt;wsa:Action&gt;urn:getVersion&lt;/wsa:Action&gt;
&lt;/SOAP-ENV:Header&gt;
&lt;SOAP-ENV:Body&gt;
&lt;/SOAP-ENV:Body&gt;
&lt;/SOAP-ENV:Envelope&gt;</pre></div><p>On most Linux/Unix systems (including Mac OS X), the <tt>nc</tt> utility is available to send UDP messages and can be used to test the transport. To do this, save the message into <tt>test-message.xml</tt> and execute the following command:</p><div class="source"><pre>nc -u 127.0.0.1 3333 &lt; test-message.xml</pre></div></div></div></div>
</div>
</div>
<div class="clear">
<hr/>
</div>
<div id="footer">
<div class="xright">
Copyright &#169; 2004-2015
<a href="http://www.apache.org/">The Apache Software Foundation</a>.
All Rights Reserved.
</div>
<div class="clear">
<hr/>
</div>
</div>
</body>
</html>