[JBossWS] - WebServiceException: Undefined port type
by abcd1234
I am new to Web Services with JBoss. A client is connecting to an EJB3 based Web Service With JBoss AS 5 and JDK 6 using JAX-WS. I am stuck with the following exception. Some jars might be missing in the classpath for the client. If it is the case , which ones ?
I have verified that Jboss has correctly deployed the Web Service.
| Exception in thread "main" javax.xml.ws.WebServiceException:Undefined port type: {http://webservice.samples/}HelloRemoteat com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:300)at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:306)at javax.xml.ws.Service.getPort(Service.java:161)at samples.client.BeanWSClient.getPort(BeanWSClient.java:44)at samples.client.BeanWSClient.main(BeanWSClient.java:35)
BeanWSClient.java (client is a different project than EJB3 WS):
package samples.client;
| import java.net.MalformedURLException;
| import java.net.URL;
| import javax.xml.namespace.QName;
| import javax.xml.ws.Service;
| import samples.webservice.HelloRemote;
|
| public class BeanWSClient {
|
| /**
| * @param args
| */
| public static void main(String[] args) throws Exception{
| // TODO Auto-generated method stub
|
|
| String endpointURI ="http://127.0.0.1:8080/SampleWSEJBProject/HelloWorld?wsdl";
| String helloWorld = "Hello world!";
|
| Object retObj = getPort(endpointURI).echo(helloWorld);
| System.out.println(retObj);
| }
| private static HelloRemote getPort(String endpointURI) throws MalformedURLException {
| QName serviceName = new QName("http://www.openuri.org/2004/04/HelloWorld", "HelloWorldService");
| URL wsdlURL = new URL(endpointURI);
|
|
| Service service = Service.create(wsdlURL, serviceName);
| return service.getPort(HelloRemote.class);
| }
|
|
| }
|
HelloRemote.java:
package samples.webservice;
| import javax.jws.WebService;
| @WebService
| public interface HelloRemote { public String echo(String input);}
HelloWorld.java:
package samples.webservice;
| import javax.ejb.Remote;
| import javax.ejb.Stateless;
| import javax.jws.WebMethod;
| import javax.jws.WebService;
| import javax.jws.soap.SOAPBinding;
| /** * Session Bean implementation class MyBean */
| @WebService(name = "EndpointInterface", targetNamespace = "http://www.openuri.org/2004/04/HelloWorld", serviceName = "HelloWorldService")@SOAPBinding(style = SOAPBinding.Style.RPC)(a)Remote(HelloRemote.class)
| @Stateless
| public class HelloWorld implements HelloRemote {
| /** * @see Object#Object() */
| @WebMethod
| public String echo(String input) { return input; }}
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4221782#4221782
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4221782
15 years, 6 months
[JBoss Messaging] - JBM Clustering Issue
by venukb
JBoss - 4.2.3 GA
JBM - 1.4.2GA SP!
--------------------------------
The Postoffice service in JBM has the following attribute
<!-- The JGroups group name that the post office will use -->
|
| <attribute name="GroupName">${jboss.messaging.groupname:MessagingPostOffice}</attribute>
Documentation says that nodes in a JBM cluster should have the same Group Name.
Thats what we wanted and we set the value by passing the name as a JVM argument
-Djboss.messaging.groupname=ha1messaging
We have 4 JBoss Instances running in the same subnet; 2 clusters (with each cluster having 2 nodes)
JBoss and other services (HTTP clustering/SFSB clutering etc) can read the -g (jboss.partition.name) param value and use it to form the proper cluster. (The Mcast IP and port are unchanged; Jgroup messages are dropped based on the JGroups group name)
However JBM doesnt seem to consider the value passed in jboss.messaging.groupname and all the 4 nodes form a Postoffice cluster !
Is this a known issue? (If JBM discards group name, we can try setting unique MCAST IP/Port, but this isn't clean)
Let us know if there is any other way of resolving this issue?
Thanks
Venu
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4221781#4221781
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4221781
15 years, 6 months
[JNDI/Naming/Network] - Re: access ejb frm a standalone java client:java.lang.ClassN
by yhqian99
Hi jaikiran,
In MyEclipse I created a EJB project , name it FirstEJB, the three java files of bean are under src\com directory, and the client code are under src\test directory, then I ceated a folder lib under FirstEJB and copy the jbossall-client.jar to lib folder, then through the properties of the FirstEJB project, I add the lib\jbossall-client.jar to the java Build Path Libraries, that's it. After finishing the above steps, my EJB project looks like the following:
FirstEJB
|---src
| |--com
| | |---HelloEJB.java
| | |---HelloEJBLocal.java
| | |---HelloEJBRemote.java
| |---test
| | |---TestHelloEJB.java
| |---META-INF
|---JRE System Library[jdk6]
|---Java EE 5 Libraries
|---jbossall-client.jar
|---lib
Please note that, jbossall-client.jar is actually pasted into the lib directory,, but after I set the \lib\jbossall-client.jar to the java build path, jbossall-client.jar file appears above the lib directory.
If I set the JBOSS_HOME\client\jbossall-client.jar to the project's build path, everything goes well. The project structure will change a little, like the following:
FirstEJB
|---src
| |--com
| | |---HelloEJB.java
| | |---HelloEJBLocal.java
| | |---HelloEJBRemote.java
| |---test
| | |---TestHelloEJB.java
| |---META-INF
|---JRE System Library[jdk6]
|---Java EE 5 Libraries
|---jbossall-client.jar - D:\jboss-5.0.1.GA\client\
In this case, the jbossall-client.jar is the one under the server's client directory
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4221778#4221778
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4221778
15 years, 6 months
[Beginners Corner] - Re: JBoss Web Console 4.2.1 on Gentoo Linux OS
by kaushalshriyan
jboss-web.xml
| <?xml version='1.0' encoding='UTF-8' ?>
|
| <!DOCTYPE jboss-web
| PUBLIC "-//JBoss//DTD Web Application 2.3V2//EN"
| "http://www.jboss.org/j2ee/dtd/jboss-web_3_2.dtd">
|
| <jboss-web>
|
| <!-- Uncomment the security-domain to enable security. You will
| need to edit the htmladaptor login configuration to setup the
| login modules used to authentication users.
| -->
| <security-domain>java:/jaas/web-console</security-domain>
|
| <!-- The war depends on the -->
| <depends>jboss.admin:service=PluginManager</depends>
| </jboss-web>
|
web.xml
| <?xml version="1.0"?>
| <!DOCTYPE web-app PUBLIC
| "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
| "http://java.sun.com/dtd/web-app_2_3.dtd">
|
| <web-app>
| <description>Web Admin Console</description>
| <servlet>
| <servlet-name>J2EEFolder</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>ScriptName</param-name>
| <param-value>J2EEFolder.bsh</param-value>
| </init-param>
| <init-param>
| <param-name>IsRootNode</param-name>
| <param-value>true</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>SystemFolder</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>ScriptName</param-name>
| <param-value>SystemFolder.bsh</param-value>
| </init-param>
| <init-param>
| <param-name>IsRootNode</param-name>
| <param-value>true</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>MonitorsFolder</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>WrapperClass</param-name>
| <param-value>org.jboss.console.plugins.MonitorLister</param-value>
| </init-param>
| <init-param>
| <param-name>IsRootNode</param-name>
| <param-value>true</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>AOPFolder</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>WrapperClass</param-name>
| <param-value>org.jboss.console.plugins.AOPLister</param-value>
| </init-param>
| <init-param>
| <param-name>IsRootNode</param-name>
| <param-value>true</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>JMS Message</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>WrapperClass</param-name>
| <param-value>org.jboss.console.plugins.JMSLister</param-value>
| </init-param>
| <init-param>
| <param-name>MBeanClass</param-name>
| <param-value>org.jboss.management.j2ee.JMSResource</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <!--servlet>
| <servlet-name>UCLs</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>ScriptName</param-name>
| <param-value>Classloaders.bsh</param-value>
| </init-param>
| <init-param>
| <param-name>FolderName</param-name>
| <param-value>ROOT/System</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet-->
|
| <servlet>
| <servlet-name>UCLs</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>WrapperClass</param-name>
| <param-value>org.jboss.console.plugins.UCLLister</param-value>
| </init-param>
| <init-param>
| <param-name>FolderName</param-name>
| <param-value>ROOT/System</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>MBeans</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>WrapperClass</param-name>
| <param-value>org.jboss.console.plugins.MBeansLister</param-value>
| </init-param>
| <init-param>
| <param-name>FolderName</param-name>
| <param-value>ROOT/System</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>JSR77 Domains and Servers</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>WrapperClass</param-name>
| <param-value>org.jboss.console.plugins.JSR77Lister</param-value>
| </init-param>
| <init-param>
| <param-name>FolderName</param-name>
| <param-value>ROOT/J2EE</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>JSR77 EJBModules and EJBs</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>WrapperClass</param-name>
| <param-value>org.jboss.console.plugins.EJBModuleLister</param-value>
| </init-param>
| <init-param>
| <param-name>MBeanClass</param-name>
| <param-value>org.jboss.management.j2ee.EJBModule</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>JSR77 J2EE Apps</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>WrapperClass</param-name>
| <param-value>org.jboss.console.plugins.J2EEAppLister</param-value>
| </init-param>
| <init-param>
| <param-name>MBeanClass</param-name>
| <param-value>org.jboss.management.j2ee.J2EEApplication</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>JSR77 WebModule</servlet-name>
| <servlet-class>org.jboss.console.plugins.helpers.ServletPluginHelper</servlet-class>
| <init-param>
| <param-name>WrapperClass</param-name>
| <param-value>org.jboss.console.plugins.WebModuleLister</param-value>
| </init-param>
| <init-param>
| <param-name>MBeanClass</param-name>
| <param-value>org.jboss.management.j2ee.WebModule</param-value>
| </init-param>
| <init-param>
| <param-name>ContextName</param-name>
| <param-value>/web-console</param-value>
| </init-param>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>HTTP Invocation</servlet-name>
| <servlet-class>org.jboss.console.remote.InvokerServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>Create Snapshot</servlet-name>
| <servlet-class>org.jboss.console.plugins.monitor.CreateSnapshotServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>Manage Snapshot</servlet-name>
| <servlet-class>org.jboss.console.plugins.monitor.ManageSnapshotServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>Create Threshold Monitor</servlet-name>
| <servlet-class>org.jboss.console.plugins.monitor.CreateThresholdMonitorServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>Manage Threshold Monitor</servlet-name>
| <servlet-class>org.jboss.console.plugins.monitor.ManageThresholdMonitorServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>Create String Threshold Monitor</servlet-name>
| <servlet-class>org.jboss.console.plugins.monitor.CreateStringThresholdMonitorServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>Manage String Threshold Monitor</servlet-name>
| <servlet-class>org.jboss.console.plugins.monitor.ManageStringThresholdMonitorServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>Clear Monitor Alerts</servlet-name>
| <servlet-class>org.jboss.console.plugins.monitor.ClearMonitorAlertsServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>Acknowledge Active Alarms</servlet-name>
| <servlet-class>org.jboss.console.plugins.monitor.AcknowledgeActiveAlarmsServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>Status Servlet</servlet-name>
| <servlet-class>org.jboss.web.tomcat.service.StatusServlet</servlet-class>
| </servlet>
|
| <servlet-mapping>
| <servlet-name>Status Servlet</servlet-name>
| <url-pattern>/status</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>HTTP Invocation</servlet-name>
| <url-pattern>/Invoker/*</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>Create Snapshot</servlet-name>
| <url-pattern>/CreateSnapshot</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>Manage Snapshot</servlet-name>
| <url-pattern>/ManageSnapshot</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>Create Threshold Monitor</servlet-name>
| <url-pattern>/CreateThresholdMonitor</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>Manage Threshold Monitor</servlet-name>
| <url-pattern>/ManageThresholdMonitor</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>Create String Threshold Monitor</servlet-name>
| <url-pattern>/CreateStringThresholdMonitor</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>Manage String Threshold Monitor</servlet-name>
| <url-pattern>/ManageStringThresholdMonitor</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>Clear Monitor Alerts</servlet-name>
| <url-pattern>/ClearMonitorAlerts</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>Acknowledge Active Alarms</servlet-name>
| <url-pattern>/AcknowledgeActiveAlarms</url-pattern>
| </servlet-mapping>
|
| <taglib>
| <taglib-uri>/webconsole</taglib-uri>
| <taglib-location>/WEB-INF/tlds/webconsole.tld</taglib-location>
| </taglib>
|
| <!-- A security constraint that restricts access to the HTML JMX console
| to users with the role JBossAdmin. Edit the roles to what you want and
| uncomment the WEB-INF/jboss-web.xml/security-domain element to enable
| secured access to the HTML JMX console.
|
| <security-constraint>
| <web-resource-collection>
| <web-resource-name>HtmlAdaptor</web-resource-name>
| <description>An example security config that only allows users with the
| role JBossAdmin to access the HTML JMX console web application
| </description>
| <url-pattern>/*</url-pattern>
| <http-method>GET</http-method>
| <http-method>POST</http-method>
| </web-resource-collection>
| <auth-constraint>
| <role-name>JBossAdmin</role-name>
| </auth-constraint>
| </security-constraint>
| -->
|
| <login-config>
| <auth-method>BASIC</auth-method>
| <realm-name>JBoss WEB Console</realm-name>
| </login-config>
|
| <security-role>
| <role-name>JBossAdmin</role-name>
| </security-role>
| </web-app>
|
|
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4221773#4221773
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4221773
15 years, 6 months