From do-not-reply at jboss.com Mon Jun 11 06:42:45 2012 Content-Type: multipart/mixed; boundary="===============2050385977997405522==" MIME-Version: 1.0 From: Paul Robinson To: jboss-user at lists.jboss.org Subject: [jboss-user] [JBoss Web Services] - Unable to obtain wsdl when running in IPv6 mode Date: Mon, 11 Jun 2012 06:42:44 -0400 Message-ID: <2-740945-3-11488-1339411356333.jivesbs.jivemailuser@https://community.jboss.org> --===============2050385977997405522== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Paul Robinson [https://community.jboss.org/people/paul.robinson] created th= e discussion "Unable to obtain wsdl when running in IPv6 mode" To view the discussion, visit: https://community.jboss.org/message/740945#7= 40945 -------------------------------------------------------------- All, I'm experiencing a problem when I try to obtain the wsdl of a JAX-WS servic= e when the latest (master as of 9am BST today) build of JBossAS is started = in IPv6 mode. I think I'm configuring the server correctly for IPv6 as I us= e the same config as JBoss QE use. To reproduce: Build today's JBossAS7 master (~9am if having trouble reproducing) Download the attatched simple project and unzip cd jax-ws-simple mvn install cp target/echo_service-1.0.war $JBOSS_HOME/standalone/deployments/ Start jboss: sh bin/standalone.sh -Djboss.bind.address=3Dlocalhost -Djboss.bind.address.= management=3Dlocalhost -Djboss.bind.address.unsecure=3Dlocalhost -Djava.net= .preferIPv4Stack=3Dfalse -Djava.net.preferIPv6Addresses=3Dtrue Try to obtain the wsdl: curl http://localhost:8080/echo_service-1.0/EchoServiceService?wsdl Observe the following from curl: JBoss Web/7.0.16.Final - Error report

HTTP Status 500 -


= type Exception report

message

descript= ion The server encountered an internal error () that prevented it fr= om fulfilling this request.

exception

javax.servlet.S=
ervletException: Cannot obtain destination for: /echo_service-1.0/EchoServi=
ceService
=C2=A0=C2=A0=C2=A0 org.jboss.wsf.stack.cxf.RequestHandlerImpl.findDestinati=
on(RequestHandlerImpl.java:164)
=C2=A0=C2=A0=C2=A0 org.jboss.wsf.stack.cxf.RequestHandlerImpl.handleHttpReq=
uest(RequestHandlerImpl.java:81)
=C2=A0=C2=A0=C2=A0 org.jboss.wsf.stack.cxf.transport.ServletHelper.callRequ=
estHandler(ServletHelper.java:169)
=C2=A0=C2=A0=C2=A0 org.jboss.wsf.stack.cxf.CXFServletExt.invoke(CXFServletE=
xt.java:87)
=C2=A0=C2=A0=C2=A0 org.apache.cxf.transport.servlet.AbstractHTTPServlet.han=
dleRequest(AbstractHTTPServlet.java:187)
=C2=A0=C2=A0=C2=A0 org.apache.cxf.transport.servlet.AbstractHTTPServlet.doG=
et(AbstractHTTPServlet.java:115)
=C2=A0=C2=A0=C2=A0 javax.servlet.http.HttpServlet.service(HttpServlet.java:=
734)
=C2=A0=C2=A0=C2=A0 org.jboss.wsf.stack.cxf.CXFServletExt.service(CXFServlet=
Ext.java:135)
=C2=A0=C2=A0=C2=A0 org.jboss.wsf.spi.deployment.WSFServlet.service(WSFServl=
et.java:140)
=C2=A0=C2=A0=C2=A0 javax.servlet.http.HttpServlet.service(HttpServlet.java:=
847)

note The full stack trace of the root cause is avail= able in the JBoss Web/7.0.16.Final logs.


JBoss Web/7.0.16.Final

admins-MacBook-Pro:jax= -ws-simple paul And the following on the JBossAS console output: 11:38:06,110 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[def= ault-host].[/echo_service-1.0].[org.my.simple.server.EchoServiceImpl]] (htt= p-/0:0:0:0:0:0:0:1:8080-1) Servlet.service() for servlet org.my.simple.serv= er.EchoServiceImpl threw exception: javax.servlet.ServletException: Cannot = obtain destination for: /echo_service-1.0/EchoServiceService =C2=A0=C2=A0=C2=A0 at org.jboss.wsf.stack.cxf.RequestHandlerImpl.findDestin= ation(RequestHandlerImpl.java:164) =C2=A0=C2=A0=C2=A0 at org.jboss.wsf.stack.cxf.RequestHandlerImpl.handleHttp= Request(RequestHandlerImpl.java:81) =C2=A0=C2=A0=C2=A0 at org.jboss.wsf.stack.cxf.transport.ServletHelper.callR= equestHandler(ServletHelper.java:169) =C2=A0=C2=A0=C2=A0 at org.jboss.wsf.stack.cxf.CXFServletExt.invoke(CXFServl= etExt.java:87) =C2=A0=C2=A0=C2=A0 at org.apache.cxf.transport.servlet.AbstractHTTPServlet.= handleRequest(AbstractHTTPServlet.java:187) =C2=A0=C2=A0=C2=A0 at org.apache.cxf.transport.servlet.AbstractHTTPServlet.= doGet(AbstractHTTPServlet.java:115) =C2=A0=C2=A0=C2=A0 at javax.servlet.http.HttpServlet.service(HttpServlet.ja= va:734) [jboss-servlet-api_3.0_spec-1.0.1.Final.jar:1.0.1.Final] =C2=A0=C2=A0=C2=A0 at org.jboss.wsf.stack.cxf.CXFServletExt.service(CXFServ= letExt.java:135) =C2=A0=C2=A0=C2=A0 at org.jboss.wsf.spi.deployment.WSFServlet.service(WSFSe= rvlet.java:140) [jbossws-spi-2.1.0.Beta1.jar:2.1.0.Beta1] =C2=A0=C2=A0=C2=A0 at javax.servlet.http.HttpServlet.service(HttpServlet.ja= va:847) [jboss-servlet-api_3.0_spec-1.0.1.Final.jar:1.0.1.Final] =C2=A0=C2=A0=C2=A0 at org.apache.catalina.core.ApplicationFilterChain.inter= nalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at org.apache.catalina.core.ApplicationFilterChain.doFil= ter(ApplicationFilterChain.java:248) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at org.apache.catalina.core.StandardWrapperValve.invoke(= StandardWrapperValve.java:275) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at org.apache.catalina.core.StandardContextValve.invoke(= StandardContextValve.java:161) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at org.jboss.as.web.security.SecurityContextAssociationV= alve.invoke(SecurityContextAssociationValve.java:156) [jboss-as-web-7.2.0.A= lpha1-SNAPSHOT.jar:7.2.0.Alpha1-SNAPSHOT] =C2=A0=C2=A0=C2=A0 at org.apache.catalina.core.StandardHostValve.invoke(Sta= ndardHostValve.java:155) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at org.apache.catalina.valves.ErrorReportValve.invoke(Er= rorReportValve.java:102) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at org.apache.catalina.core.StandardEngineValve.invoke(S= tandardEngineValve.java:109) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at org.apache.catalina.connector.CoyoteAdapter.service(C= oyoteAdapter.java:368) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at org.apache.coyote.http11.Http11Processor.process(Http= 11Processor.java:877) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at org.apache.coyote.http11.Http11Protocol$Http11Connect= ionHandler.process(Http11Protocol.java:679) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIo= Endpoint.java:931) [jbossweb-7.0.16.Final.jar:] =C2=A0=C2=A0=C2=A0 at java.lang.Thread.run(Thread.java:680) [classes.jar:1.= 6.0_31] If you repeat, by starting up the server without my additional parameters, = you should see that the wsdl is returned without issue. Thanks, Paul. -------------------------------------------------------------- Reply to this message by going to Community [https://community.jboss.org/message/740945#740945] Start a new discussion in JBoss Web Services at Community [https://community.jboss.org/choose-container!input.jspa?contentType=3D1&co= ntainerType=3D14&container=3D2044] --===============2050385977997405522== Content-Type: text/html MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.html" PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwv L0VOIj4KPGh0bWw+Cjxib2R5IGxpbms9IiMzNTU0OTEiIGFsaW5rPSIjNDI2MmExIiB2bGluaz0i IzM1NTQ5MSIgc3R5bGU9ImJhY2tncm91bmQ6ICNlMmUyZTI7IG1hcmdpbjogMDsgcGFkZGluZzog MjBweDsiPgoKPGRpdj4KCTx0YWJsZSBjZWxscGFkZGluZz0iMCIgYmdjb2xvcj0iI0ZGRkZGRiIg Ym9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgc3R5bGU9ImJvcmRlcjogMXB4IHNvbGlkICNkYWRh ZGE7IG1hcmdpbi1ib3R0b206IDMwcHg7IHdpZHRoOiAxMDAlOyAtbW96LWJvcmRlci1yYWRpdXM6 IDZweDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA2cHg7Ij4KCQk8dGJvZHk+CgkJCTx0cj4KCgkJ CQk8dGQ+CgoJCQkJCTx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2lu Zz0iMCIgYmdjb2xvcj0iI0ZGRkZGRiIgc3R5bGU9ImJvcmRlcjogc29saWQgMnB4ICNjY2M7IGJh Y2tncm91bmQ6ICNkYWRhZGE7IHdpZHRoOiAxMDAlOyAtbW96LWJvcmRlci1yYWRpdXM6IDZweDsg LXdlYmtpdC1ib3JkZXItcmFkaXVzOiA2cHg7Ij4KCQkJCQkJPHRib2R5PgoJCQkJCQkJPHRyPgoJ CQkJCQkJCTx0ZCBiZ2NvbG9yPSIjMDAwMDAwIiB2YWxpZ249Im1pZGRsZSIgaGVpZ2h0PSI1OHB4 IiBzdHlsZT0iYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7IHBhZGRpbmc6IDIwcHg7IC1t b3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OiAzcHg7IC1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdo dDogM3B4OyAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7IC13ZWJraXQtYm9y ZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4OyI+CgkJCQkJCQkJCTxoMSBzdHlsZT0iY29sb3I6ICMz MzMzMzM7IGZvbnQ6IGJvbGQgMjJweCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyBtYXJn aW46IDA7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7Ij4KCQkJCQkJCQkJPCEtLSBUbyBoYXZl IGEgaGVhZGVyIGltYWdlL2xvZ28gcmVwbGFjZSB0aGUgbmFtZSBiZWxvdyB3aXRoIHlvdXIgaW1n IHRhZyAtLT4KCQkJCQkJCQkJPCEtLSBFbWFpbCBjbGllbnRzIHdpbGwgcmVuZGVyIHRoZSBpbWFn ZXMgd2hlbiB0aGUgbWVzc2FnZSBpcyByZWFkIHNvIGFueSBpbWFnZSAtLT4KCQkJCQkJCQkJPCEt LSBtdXN0IGJlIG1hZGUgYXZhaWxhYmxlIG9uIGEgcHVibGljIHNlcnZlciwgc28gdGhhdCBhbGwg cmVjaXBpZW50cyBjYW4gbG9hZCB0aGUgaW1hZ2UuIC0tPgoJCQkJCQkJCQk8YSBocmVmPSJodHRw czovL2NvbW11bml0eS5qYm9zcy5vcmcvaW5kZXguanNwYSIgc3R5bGU9InRleHQtZGVjb3JhdGlv bjogbm9uZTsgY29sb3I6ICNFMUUxRTEiPkpCb3NzIENvbW11bml0eTwvYT48L2gxPgoJCQkJCQkJ CTwvdGQ+CgoJCQkJCQkJPC90cj4KCQkJCQkJCTx0cj4KCQkJCQkJCQk8dGQgYmdjb2xvcj0iI0ZG RkZGRiIgc3R5bGU9ImZvbnQ6IG5vcm1hbCAxMnB4IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2Vy aWY7IGNvbG9yOiMzMzMzMzM7IHBhZGRpbmc6IDIwcHg7ICAtbW96LWJvcmRlci1yYWRpdXMtYm90 dG9tbGVmdDogNHB4OyAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6IDRweDsgLXdlYmtp dC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNXB4OyAtd2Via2l0LWJvcmRlci1ib3R0b20t bGVmdC1yYWRpdXM6IDVweDsiPjxoMyBzdHlsZT0ibWFyZ2luOiAxMHB4IDAgNXB4OyBmb250LXNp emU6IDE3cHg7IGZvbnQtd2VpZ2h0OiBub3JtYWw7Ij4KICAgIFVuYWJsZSB0byBvYnRhaW4gd3Nk bCB3aGVuIHJ1bm5pbmcgaW4gSVB2NiBtb2RlCjwvaDM+CjxzcGFuIHN0eWxlPSJtYXJnaW4tYm90 dG9tOiAxMHB4OyI+CiAgICBjcmVhdGVkIGJ5IDxhIGhyZWY9Imh0dHBzOi8vY29tbXVuaXR5Lmpi b3NzLm9yZy9wZW9wbGUvcGF1bC5yb2JpbnNvbiI+UGF1bCBSb2JpbnNvbjwvYT4gaW4gPGk+SkJv c3MgV2ViIFNlcnZpY2VzPC9pPiAtIDxhIGhyZWY9Imh0dHBzOi8vY29tbXVuaXR5Lmpib3NzLm9y Zy9tZXNzYWdlLzc0MDk0NSM3NDA5NDUiPlZpZXcgdGhlIGZ1bGwgZGlzY3Vzc2lvbjwvYT4KPC9z cGFuPgo8aHIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyBib3JkZXI6IG5vbmU7IGJhY2tncm91bmQt Y29sb3I6ICNkYWRhZGE7IGhlaWdodDogMXB4OyI+Cgo8ZGl2IGNsYXNzPSJqaXZlLXJlbmRlcmVk LWNvbnRlbnQiPjxwPkFsbCw8L3A+PHAgc3R5bGU9Im1pbi1oZWlnaHQ6IDhwdDsgaGVpZ2h0OiA4 cHQ7IHBhZGRpbmc6IDBweDsiPiYjMTYwOzwvcD48cD5JJ20gZXhwZXJpZW5jaW5nIGEgcHJvYmxl bSB3aGVuIEkgdHJ5IHRvIG9idGFpbiB0aGUgd3NkbCBvZiBhIEpBWC1XUyBzZXJ2aWNlIHdoZW4g dGhlIGxhdGVzdCAobWFzdGVyIGFzIG9mIDlhbSBCU1QgdG9kYXkpIGJ1aWxkIG9mIEpCb3NzQVMg aXMgc3RhcnRlZCBpbiBJUHY2IG1vZGUuIEkgdGhpbmsgSSdtIGNvbmZpZ3VyaW5nIHRoZSBzZXJ2 ZXIgY29ycmVjdGx5IGZvciBJUHY2IGFzIEkgdXNlIHRoZSBzYW1lIGNvbmZpZyBhcyBKQm9zcyBR RSB1c2UuPC9wPjxwIHN0eWxlPSJtaW4taGVpZ2h0OiA4cHQ7IGhlaWdodDogOHB0OyBwYWRkaW5n OiAwcHg7Ij4mIzE2MDs8L3A+PHA+VG8gcmVwcm9kdWNlOjwvcD48cCBzdHlsZT0ibWluLWhlaWdo dDogOHB0OyBoZWlnaHQ6IDhwdDsgcGFkZGluZzogMHB4OyI+JiMxNjA7PC9wPjxwIHN0eWxlPSJt aW4taGVpZ2h0OiA4cHQ7IGhlaWdodDogOHB0OyBwYWRkaW5nOiAwcHg7Ij4mIzE2MDs8L3A+PHBy ZSBjbGFzcz0iaml2ZS1wcmUiPjxjb2RlIGNsYXNzPSJqaXZlLWNvZGUiPkJ1aWxkIHRvZGF5J3Mg SkJvc3NBUzcgbWFzdGVyICh+OWFtIGlmIGhhdmluZyB0cm91YmxlIHJlcHJvZHVjaW5nKQoKRG93 bmxvYWQgdGhlIGF0dGF0Y2hlZCBzaW1wbGUgcHJvamVjdCBhbmQgdW56aXAKCmNkIGpheC13cy1z aW1wbGUKbXZuIGluc3RhbGwKY3AgdGFyZ2V0L2VjaG9fc2VydmljZS0xLjAud2FyICRKQk9TU19I T01FL3N0YW5kYWxvbmUvZGVwbG95bWVudHMvCgpTdGFydCBqYm9zczoKc2ggYmluL3N0YW5kYWxv bmUuc2ggLURqYm9zcy5iaW5kLmFkZHJlc3M9bG9jYWxob3N0IC1EamJvc3MuYmluZC5hZGRyZXNz Lm1hbmFnZW1lbnQ9bG9jYWxob3N0IC1EamJvc3MuYmluZC5hZGRyZXNzLnVuc2VjdXJlPWxvY2Fs aG9zdCAtRGphdmEubmV0LnByZWZlcklQdjRTdGFjaz1mYWxzZSAtRGphdmEubmV0LnByZWZlcklQ djZBZGRyZXNzZXM9dHJ1ZQoKVHJ5IHRvIG9idGFpbiB0aGUgd3NkbDoKY3VybCBodHRwOi8vbG9j YWxob3N0OjgwODAvZWNob19zZXJ2aWNlLTEuMC9FY2hvU2VydmljZVNlcnZpY2U/d3NkbAoKCk9i c2VydmUgdGhlIGZvbGxvd2luZyBmcm9tIGN1cmw6CgombHQ7aHRtbCZndDsmbHQ7aGVhZCZndDsm bHQ7dGl0bGUmZ3Q7SkJvc3MgV2ViLzcuMC4xNi5GaW5hbCAtIEVycm9yIHJlcG9ydCZsdDsvdGl0 bGUmZ3Q7Jmx0O3N0eWxlJmd0OyZsdDshLS1IMSB7Zm9udC1mYW1pbHk6VGFob21hLEFyaWFsLHNh bnMtc2VyaWY7Y29sb3I6d2hpdGU7YmFja2dyb3VuZC1jb2xvcjojNTI1RDc2O2ZvbnQtc2l6ZToy MnB4O30gSDIge2ZvbnQtZmFtaWx5OlRhaG9tYSxBcmlhbCxzYW5zLXNlcmlmO2NvbG9yOndoaXRl O2JhY2tncm91bmQtY29sb3I6IzUyNUQ3Njtmb250LXNpemU6MTZweDt9IEgzIHtmb250LWZhbWls eTpUYWhvbWEsQXJpYWwsc2Fucy1zZXJpZjtjb2xvcjp3aGl0ZTtiYWNrZ3JvdW5kLWNvbG9yOiM1 MjVENzY7Zm9udC1zaXplOjE0cHg7fSBCT0RZIHtmb250LWZhbWlseTpUYWhvbWEsQXJpYWwsc2Fu cy1zZXJpZjtjb2xvcjpibGFjaztiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO30gQiB7Zm9udC1mYW1p bHk6VGFob21hLEFyaWFsLHNhbnMtc2VyaWY7Y29sb3I6d2hpdGU7YmFja2dyb3VuZC1jb2xvcjoj NTI1RDc2O30gUCB7Zm9udC1mYW1pbHk6VGFob21hLEFyaWFsLHNhbnMtc2VyaWY7YmFja2dyb3Vu ZDp3aGl0ZTtjb2xvcjpibGFjaztmb250LXNpemU6MTJweDt9QSB7Y29sb3IgOiBibGFjazt9QS5u YW1lIHtjb2xvciA6IGJsYWNrO31IUiB7Y29sb3IgOiAjNTI1RDc2O30tLSZndDsmbHQ7L3N0eWxl Jmd0OyAmbHQ7L2hlYWQmZ3Q7Jmx0O2JvZHkmZ3Q7Jmx0O2gxJmd0O0hUVFAgU3RhdHVzIDUwMCAt ICZsdDsvaDEmZ3Q7Jmx0O0hSIHNpemU9IjEiIG5vc2hhZGU9Im5vc2hhZGUiJmd0OyZsdDtwJmd0 OyZsdDtiJmd0O3R5cGUmbHQ7L2ImZ3Q7IEV4Y2VwdGlvbiByZXBvcnQmbHQ7L3AmZ3Q7Jmx0O3Am Z3Q7Jmx0O2ImZ3Q7bWVzc2FnZSZsdDsvYiZndDsgJmx0O3UmZ3Q7Jmx0Oy91Jmd0OyZsdDsvcCZn dDsmbHQ7cCZndDsmbHQ7YiZndDtkZXNjcmlwdGlvbiZsdDsvYiZndDsgJmx0O3UmZ3Q7VGhlIHNl cnZlciBlbmNvdW50ZXJlZCBhbiBpbnRlcm5hbCBlcnJvciAoKSB0aGF0IHByZXZlbnRlZCBpdCBm cm9tIGZ1bGZpbGxpbmcgdGhpcyByZXF1ZXN0LiZsdDsvdSZndDsmbHQ7L3AmZ3Q7Jmx0O3AmZ3Q7 Jmx0O2ImZ3Q7ZXhjZXB0aW9uJmx0Oy9iJmd0OyAmbHQ7cHJlJmd0O2phdmF4LnNlcnZsZXQuU2Vy dmxldEV4Y2VwdGlvbjogQ2Fubm90IG9idGFpbiBkZXN0aW5hdGlvbiBmb3I6IC9lY2hvX3NlcnZp Y2UtMS4wL0VjaG9TZXJ2aWNlU2VydmljZQomIzE2MDsmIzE2MDsmIzE2MDsgb3JnLmpib3NzLndz Zi5zdGFjay5jeGYuUmVxdWVzdEhhbmRsZXJJbXBsLmZpbmREZXN0aW5hdGlvbihSZXF1ZXN0SGFu ZGxlckltcGwuamF2YToxNjQpCiYjMTYwOyYjMTYwOyYjMTYwOyBvcmcuamJvc3Mud3NmLnN0YWNr LmN4Zi5SZXF1ZXN0SGFuZGxlckltcGwuaGFuZGxlSHR0cFJlcXVlc3QoUmVxdWVzdEhhbmRsZXJJ bXBsLmphdmE6ODEpCiYjMTYwOyYjMTYwOyYjMTYwOyBvcmcuamJvc3Mud3NmLnN0YWNrLmN4Zi50 cmFuc3BvcnQuU2VydmxldEhlbHBlci5jYWxsUmVxdWVzdEhhbmRsZXIoU2VydmxldEhlbHBlci5q YXZhOjE2OSkKJiMxNjA7JiMxNjA7JiMxNjA7IG9yZy5qYm9zcy53c2Yuc3RhY2suY3hmLkNYRlNl cnZsZXRFeHQuaW52b2tlKENYRlNlcnZsZXRFeHQuamF2YTo4NykKJiMxNjA7JiMxNjA7JiMxNjA7 IG9yZy5hcGFjaGUuY3hmLnRyYW5zcG9ydC5zZXJ2bGV0LkFic3RyYWN0SFRUUFNlcnZsZXQuaGFu ZGxlUmVxdWVzdChBYnN0cmFjdEhUVFBTZXJ2bGV0LmphdmE6MTg3KQomIzE2MDsmIzE2MDsmIzE2 MDsgb3JnLmFwYWNoZS5jeGYudHJhbnNwb3J0LnNlcnZsZXQuQWJzdHJhY3RIVFRQU2VydmxldC5k b0dldChBYnN0cmFjdEhUVFBTZXJ2bGV0LmphdmE6MTE1KQomIzE2MDsmIzE2MDsmIzE2MDsgamF2 YXguc2VydmxldC5odHRwLkh0dHBTZXJ2bGV0LnNlcnZpY2UoSHR0cFNlcnZsZXQuamF2YTo3MzQp CiYjMTYwOyYjMTYwOyYjMTYwOyBvcmcuamJvc3Mud3NmLnN0YWNrLmN4Zi5DWEZTZXJ2bGV0RXh0 LnNlcnZpY2UoQ1hGU2VydmxldEV4dC5qYXZhOjEzNSkKJiMxNjA7JiMxNjA7JiMxNjA7IG9yZy5q Ym9zcy53c2Yuc3BpLmRlcGxveW1lbnQuV1NGU2VydmxldC5zZXJ2aWNlKFdTRlNlcnZsZXQuamF2 YToxNDApCiYjMTYwOyYjMTYwOyYjMTYwOyBqYXZheC5zZXJ2bGV0Lmh0dHAuSHR0cFNlcnZsZXQu c2VydmljZShIdHRwU2VydmxldC5qYXZhOjg0NykKJmx0Oy9wcmUmZ3Q7Jmx0Oy9wJmd0OyZsdDtw Jmd0OyZsdDtiJmd0O25vdGUmbHQ7L2ImZ3Q7ICZsdDt1Jmd0O1RoZSBmdWxsIHN0YWNrIHRyYWNl IG9mIHRoZSByb290IGNhdXNlIGlzIGF2YWlsYWJsZSBpbiB0aGUgSkJvc3MgV2ViLzcuMC4xNi5G aW5hbCBsb2dzLiZsdDsvdSZndDsmbHQ7L3AmZ3Q7Jmx0O0hSIHNpemU9IjEiIG5vc2hhZGU9Im5v c2hhZGUiJmd0OyZsdDtoMyZndDtKQm9zcyBXZWIvNy4wLjE2LkZpbmFsJmx0Oy9oMyZndDsmbHQ7 L2JvZHkmZ3Q7Jmx0Oy9odG1sJmd0O2FkbWlucy1NYWNCb29rLVBybzpqYXgtd3Mtc2ltcGxlIHBh dWwKCkFuZCB0aGUgZm9sbG93aW5nIG9uIHRoZSBKQm9zc0FTIGNvbnNvbGUgb3V0cHV0OgoKCjEx OjM4OjA2LDExMCBFUlJPUiBbb3JnLmFwYWNoZS5jYXRhbGluYS5jb3JlLkNvbnRhaW5lckJhc2Uu W2pib3NzLndlYl0uW2RlZmF1bHQtaG9zdF0uWy9lY2hvX3NlcnZpY2UtMS4wXS5bb3JnLm15LnNp bXBsZS5zZXJ2ZXIuRWNob1NlcnZpY2VJbXBsXV0gKGh0dHAtLzA6MDowOjA6MDowOjA6MTo4MDgw LTEpIFNlcnZsZXQuc2VydmljZSgpIGZvciBzZXJ2bGV0IG9yZy5teS5zaW1wbGUuc2VydmVyLkVj aG9TZXJ2aWNlSW1wbCB0aHJldyBleGNlcHRpb246IGphdmF4LnNlcnZsZXQuU2VydmxldEV4Y2Vw dGlvbjogQ2Fubm90IG9idGFpbiBkZXN0aW5hdGlvbiBmb3I6IC9lY2hvX3NlcnZpY2UtMS4wL0Vj aG9TZXJ2aWNlU2VydmljZQomIzE2MDsmIzE2MDsmIzE2MDsgYXQgb3JnLmpib3NzLndzZi5zdGFj ay5jeGYuUmVxdWVzdEhhbmRsZXJJbXBsLmZpbmREZXN0aW5hdGlvbihSZXF1ZXN0SGFuZGxlcklt cGwuamF2YToxNjQpCiYjMTYwOyYjMTYwOyYjMTYwOyBhdCBvcmcuamJvc3Mud3NmLnN0YWNrLmN4 Zi5SZXF1ZXN0SGFuZGxlckltcGwuaGFuZGxlSHR0cFJlcXVlc3QoUmVxdWVzdEhhbmRsZXJJbXBs LmphdmE6ODEpCiYjMTYwOyYjMTYwOyYjMTYwOyBhdCBvcmcuamJvc3Mud3NmLnN0YWNrLmN4Zi50 cmFuc3BvcnQuU2VydmxldEhlbHBlci5jYWxsUmVxdWVzdEhhbmRsZXIoU2VydmxldEhlbHBlci5q YXZhOjE2OSkKJiMxNjA7JiMxNjA7JiMxNjA7IGF0IG9yZy5qYm9zcy53c2Yuc3RhY2suY3hmLkNY RlNlcnZsZXRFeHQuaW52b2tlKENYRlNlcnZsZXRFeHQuamF2YTo4NykKJiMxNjA7JiMxNjA7JiMx NjA7IGF0IG9yZy5hcGFjaGUuY3hmLnRyYW5zcG9ydC5zZXJ2bGV0LkFic3RyYWN0SFRUUFNlcnZs ZXQuaGFuZGxlUmVxdWVzdChBYnN0cmFjdEhUVFBTZXJ2bGV0LmphdmE6MTg3KQomIzE2MDsmIzE2 MDsmIzE2MDsgYXQgb3JnLmFwYWNoZS5jeGYudHJhbnNwb3J0LnNlcnZsZXQuQWJzdHJhY3RIVFRQ U2VydmxldC5kb0dldChBYnN0cmFjdEhUVFBTZXJ2bGV0LmphdmE6MTE1KQomIzE2MDsmIzE2MDsm IzE2MDsgYXQgamF2YXguc2VydmxldC5odHRwLkh0dHBTZXJ2bGV0LnNlcnZpY2UoSHR0cFNlcnZs ZXQuamF2YTo3MzQpIFtqYm9zcy1zZXJ2bGV0LWFwaV8zLjBfc3BlYy0xLjAuMS5GaW5hbC5qYXI6 MS4wLjEuRmluYWxdCiYjMTYwOyYjMTYwOyYjMTYwOyBhdCBvcmcuamJvc3Mud3NmLnN0YWNrLmN4 Zi5DWEZTZXJ2bGV0RXh0LnNlcnZpY2UoQ1hGU2VydmxldEV4dC5qYXZhOjEzNSkKJiMxNjA7JiMx NjA7JiMxNjA7IGF0IG9yZy5qYm9zcy53c2Yuc3BpLmRlcGxveW1lbnQuV1NGU2VydmxldC5zZXJ2 aWNlKFdTRlNlcnZsZXQuamF2YToxNDApIFtqYm9zc3dzLXNwaS0yLjEuMC5CZXRhMS5qYXI6Mi4x LjAuQmV0YTFdCiYjMTYwOyYjMTYwOyYjMTYwOyBhdCBqYXZheC5zZXJ2bGV0Lmh0dHAuSHR0cFNl cnZsZXQuc2VydmljZShIdHRwU2VydmxldC5qYXZhOjg0NykgW2pib3NzLXNlcnZsZXQtYXBpXzMu MF9zcGVjLTEuMC4xLkZpbmFsLmphcjoxLjAuMS5GaW5hbF0KJiMxNjA7JiMxNjA7JiMxNjA7IGF0 IG9yZy5hcGFjaGUuY2F0YWxpbmEuY29yZS5BcHBsaWNhdGlvbkZpbHRlckNoYWluLmludGVybmFs RG9GaWx0ZXIoQXBwbGljYXRpb25GaWx0ZXJDaGFpbi5qYXZhOjMyOSkgW2pib3Nzd2ViLTcuMC4x Ni5GaW5hbC5qYXI6XQomIzE2MDsmIzE2MDsmIzE2MDsgYXQgb3JnLmFwYWNoZS5jYXRhbGluYS5j b3JlLkFwcGxpY2F0aW9uRmlsdGVyQ2hhaW4uZG9GaWx0ZXIoQXBwbGljYXRpb25GaWx0ZXJDaGFp bi5qYXZhOjI0OCkgW2pib3Nzd2ViLTcuMC4xNi5GaW5hbC5qYXI6XQomIzE2MDsmIzE2MDsmIzE2 MDsgYXQgb3JnLmFwYWNoZS5jYXRhbGluYS5jb3JlLlN0YW5kYXJkV3JhcHBlclZhbHZlLmludm9r ZShTdGFuZGFyZFdyYXBwZXJWYWx2ZS5qYXZhOjI3NSkgW2pib3Nzd2ViLTcuMC4xNi5GaW5hbC5q YXI6XQomIzE2MDsmIzE2MDsmIzE2MDsgYXQgb3JnLmFwYWNoZS5jYXRhbGluYS5jb3JlLlN0YW5k YXJkQ29udGV4dFZhbHZlLmludm9rZShTdGFuZGFyZENvbnRleHRWYWx2ZS5qYXZhOjE2MSkgW2pi b3Nzd2ViLTcuMC4xNi5GaW5hbC5qYXI6XQomIzE2MDsmIzE2MDsmIzE2MDsgYXQgb3JnLmpib3Nz LmFzLndlYi5zZWN1cml0eS5TZWN1cml0eUNvbnRleHRBc3NvY2lhdGlvblZhbHZlLmludm9rZShT ZWN1cml0eUNvbnRleHRBc3NvY2lhdGlvblZhbHZlLmphdmE6MTU2KSBbamJvc3MtYXMtd2ViLTcu Mi4wLkFscGhhMS1TTkFQU0hPVC5qYXI6Ny4yLjAuQWxwaGExLVNOQVBTSE9UXQomIzE2MDsmIzE2 MDsmIzE2MDsgYXQgb3JnLmFwYWNoZS5jYXRhbGluYS5jb3JlLlN0YW5kYXJkSG9zdFZhbHZlLmlu dm9rZShTdGFuZGFyZEhvc3RWYWx2ZS5qYXZhOjE1NSkgW2pib3Nzd2ViLTcuMC4xNi5GaW5hbC5q YXI6XQomIzE2MDsmIzE2MDsmIzE2MDsgYXQgb3JnLmFwYWNoZS5jYXRhbGluYS52YWx2ZXMuRXJy b3JSZXBvcnRWYWx2ZS5pbnZva2UoRXJyb3JSZXBvcnRWYWx2ZS5qYXZhOjEwMikgW2pib3Nzd2Vi LTcuMC4xNi5GaW5hbC5qYXI6XQomIzE2MDsmIzE2MDsmIzE2MDsgYXQgb3JnLmFwYWNoZS5jYXRh bGluYS5jb3JlLlN0YW5kYXJkRW5naW5lVmFsdmUuaW52b2tlKFN0YW5kYXJkRW5naW5lVmFsdmUu amF2YToxMDkpIFtqYm9zc3dlYi03LjAuMTYuRmluYWwuamFyOl0KJiMxNjA7JiMxNjA7JiMxNjA7 IGF0IG9yZy5hcGFjaGUuY2F0YWxpbmEuY29ubmVjdG9yLkNveW90ZUFkYXB0ZXIuc2VydmljZShD b3lvdGVBZGFwdGVyLmphdmE6MzY4KSBbamJvc3N3ZWItNy4wLjE2LkZpbmFsLmphcjpdCiYjMTYw OyYjMTYwOyYjMTYwOyBhdCBvcmcuYXBhY2hlLmNveW90ZS5odHRwMTEuSHR0cDExUHJvY2Vzc29y LnByb2Nlc3MoSHR0cDExUHJvY2Vzc29yLmphdmE6ODc3KSBbamJvc3N3ZWItNy4wLjE2LkZpbmFs LmphcjpdCiYjMTYwOyYjMTYwOyYjMTYwOyBhdCBvcmcuYXBhY2hlLmNveW90ZS5odHRwMTEuSHR0 cDExUHJvdG9jb2wkSHR0cDExQ29ubmVjdGlvbkhhbmRsZXIucHJvY2VzcyhIdHRwMTFQcm90b2Nv bC5qYXZhOjY3OSkgW2pib3Nzd2ViLTcuMC4xNi5GaW5hbC5qYXI6XQomIzE2MDsmIzE2MDsmIzE2 MDsgYXQgb3JnLmFwYWNoZS50b21jYXQudXRpbC5uZXQuSklvRW5kcG9pbnQkV29ya2VyLnJ1bihK SW9FbmRwb2ludC5qYXZhOjkzMSkgW2pib3Nzd2ViLTcuMC4xNi5GaW5hbC5qYXI6XQomIzE2MDsm IzE2MDsmIzE2MDsgYXQgamF2YS5sYW5nLlRocmVhZC5ydW4oVGhyZWFkLmphdmE6NjgwKSBbY2xh c3Nlcy5qYXI6MS42LjBfMzFdCjwvY29kZT48L3ByZT48cCBzdHlsZT0ibWluLWhlaWdodDogOHB0 OyBoZWlnaHQ6IDhwdDsgcGFkZGluZzogMHB4OyI+JiMxNjA7PC9wPjxwIHN0eWxlPSJtaW4taGVp Z2h0OiA4cHQ7IGhlaWdodDogOHB0OyBwYWRkaW5nOiAwcHg7Ij4mIzE2MDs8L3A+PHA+SWYgeW91 IHJlcGVhdCwgYnkgc3RhcnRpbmcgdXAgdGhlIHNlcnZlciB3aXRob3V0IG15IGFkZGl0aW9uYWwg cGFyYW1ldGVycywgeW91IHNob3VsZCBzZWUgdGhhdCB0aGUgd3NkbCBpcyByZXR1cm5lZCB3aXRo b3V0IGlzc3VlLjwvcD48cCBzdHlsZT0ibWluLWhlaWdodDogOHB0OyBoZWlnaHQ6IDhwdDsgcGFk ZGluZzogMHB4OyI+JiMxNjA7PC9wPjxwPlRoYW5rcyw8L3A+PHAgc3R5bGU9Im1pbi1oZWlnaHQ6 IDhwdDsgaGVpZ2h0OiA4cHQ7IHBhZGRpbmc6IDBweDsiPiYjMTYwOzwvcD48cD5QYXVsLjwvcD48 L2Rpdj4KCjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7IHBhZGRpbmc6IDEw cHg7IG1hcmdpbi10b3A6IDIwcHg7Ij4KICAgIDxwIHN0eWxlPSJtYXJnaW46IDA7Ij5SZXBseSB0 byB0aGlzIG1lc3NhZ2UgYnkgPGEgaHJlZj0iaHR0cHM6Ly9jb21tdW5pdHkuamJvc3Mub3JnL21l c3NhZ2UvNzQwOTQ1Izc0MDk0NSI+Z29pbmcgdG8gQ29tbXVuaXR5PC9hPjwvcD4KCTxwIHN0eWxl PSJtYXJnaW46IDA7Ij5TdGFydCBhIG5ldyBkaXNjdXNzaW9uIGluIEpCb3NzIFdlYiBTZXJ2aWNl cyBhdCA8YSBocmVmPSJodHRwczovL2NvbW11bml0eS5qYm9zcy5vcmcvY2hvb3NlLWNvbnRhaW5l ciFpbnB1dC5qc3BhP2NvbnRlbnRUeXBlPTEmY29udGFpbmVyVHlwZT0xNCZjb250YWluZXI9MjA0 NCI+Q29tbXVuaXR5PC9hPjwvcD4KPC9kaXY+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAg PC90cj4KICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PgogICAgICAgICAgICAgICAgPC90YWJs ZT4KCgogICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgPC90cj4KICAgICAgICA8L3Ri b2R5PgogICAgPC90YWJsZT4KCjwvZGl2PgoKPC9ib2R5Pgo8L2h0bWw+ --===============2050385977997405522==--