2 Replies Latest reply on Nov 21, 2007 11:52 AM by Willy De La Cruz Sierra

    web services

    Willy De La Cruz Sierra Newbie

      Hi...I'm using jboss-seam 2.0.0.GA and a web services client (.jar)...so what I need is to run this web services client within a Seam environment.
      I read from Seam documentation that I have to put this xml file into the META-INF directory of the jar file that contains the web service classes : standard-jaxws-endpoint-config.xml

      Do I need to modify or add any other xml file ?
      I made some classes that call the methods of the web service client, Do I have to write some specials annotations in this classes?

      I would appreciate any help. Thanks in advance.

        • 1. Re: web services
          Shane Bryzak Master

          Your question isn't quite clear - do you wish to invoke a remote web service from your Seam application? You don't need a standard-jaxws-endpoint-config.xml unless you're actually deploying web services within your Seam app (you don't need it for a web service client).

          • 2. Re: web services
            Willy De La Cruz Sierra Newbie

            Hi...thanks for answer...let me explain it better:
            I have a web service client, by this I mean a jar file that allows me to do some functionality I need to use. (This web service client is from an open source document management application [Alfresco], so i can upload a document, create spaces for the documents etc, into Alfresco repository )
            I need to use this functionality from my seam application.
            What I did was to add this jar file to the seam project class path.

            So, I made a xhtml page with an ICEFaces button, the action of this button is to upload an specific file to the Alfresco repository but using the classes and methods of the web service client.
            When I do this and I click in the button the jboss server says:

            04:34:03,077 ERROR [STDERR] Nov 21, 2007 4:34:03 AM javax.faces.event.MethodExpressionActionListener processAction
            SEVERE: Received 'javax.ejb.EJBTransactionRolledbackException' when invoking action listener '#{mybean.action}' for component 'j_id16'
            04:34:03,082 ERROR [STDERR] Nov 21, 2007 4:34:03 AM javax.faces.event.MethodExpressionActionListener processAction
            SEVERE: javax.ejb.EJBTransactionRolledbackException: java.lang.NoClassDefFoundError: org/alfresco/webservice/repository/RepositoryServiceSoapBindingStub
            at org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java:87)
            at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130)
            at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
            at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
            at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
            at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
            at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:83)
            at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
            at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
            at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
            at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
            at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
            at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
            at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
            at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
            at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:204)
            at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:100)
            at $Proxy224.action(Unknown Source)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:585)
            at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
            at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
            at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:76)
            at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
            at org.jboss.seam.ejb.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:41)
            at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
            at org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:32)
            at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
            at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:106)
            at org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:54)
            at org.javassist.tmp.java.lang.Object_$$_javassist_75.action(Object_$$_javassist_75.java)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:585)
            at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:328)
            at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:341)
            at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58)
            at org.jboss.el.parser.AstValue.invoke(AstValue.java:96)
            at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
            at org.jboss.seam.el.OptionalParameterMethodExpression.invoke(OptionalParameterMethodExpression.java:45)
            at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
            at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:88)
            at javax.faces.event.ActionEvent.processListener(ActionEvent.java:77)
            at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:746)
            at javax.faces.component.UICommand.broadcast(UICommand.java:368)
            at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:447)
            at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:752)
            at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
            at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
            at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
            at com.icesoft.faces.webapp.http.core.ReceiveSendUpdates.renderCycle(ReceiveSendUpdates.java:57)
            at com.icesoft.faces.webapp.http.core.ReceiveSendUpdates.service(ReceiveSendUpdates.java:45)
            at com.icesoft.faces.webapp.http.core.IDVerifier.service(IDVerifier.java:25)
            at com.icesoft.faces.webapp.http.core.ViewBoundServer.service(ViewBoundServer.java:52)
            at com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer$Matcher.serviceOnMatch(PathDispatcherServer.java:50)
            at com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer.service(PathDispatcherServer.java:19)
            at com.icesoft.faces.webapp.http.servlet.ThreadBlockingAdaptingServlet.service(ThreadBlockingAdaptingServlet.java:19)
            at com.icesoft.faces.webapp.http.servlet.EnvironmentAdaptingServlet.service(EnvironmentAdaptingServlet.java:29)
            at com.icesoft.faces.webapp.http.servlet.MainSessionBoundServlet.service(MainSessionBoundServlet.java:109)
            at com.icesoft.faces.webapp.http.servlet.SessionDispatcher.service(SessionDispatcher.java:35)
            at com.icesoft.faces.webapp.http.servlet.PathDispatcher$Matcher.serviceOnMatch(PathDispatcher.java:52)
            at com.icesoft.faces.webapp.http.servlet.PathDispatcher.service(PathDispatcher.java:29)
            at com.icesoft.faces.webapp.http.servlet.MainServlet.service(MainServlet.java:98)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
            at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
            at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:364)
            at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
            at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.service(BlockingServlet.java:54)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
            at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:68)
            at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
            at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
            at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
            at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
            at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
            at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
            at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
            at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:44)
            at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
            at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.apache.catalina.core.S
            04:34:03,085 ERROR [STDERR] tandardWrapperValve.invoke(StandardWrapperValve.java:230)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
            at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
            at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
            at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
            at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
            at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
            at java.lang.Thread.run(Thread.java:595)
            Caused by: java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/alfresco/webservice/repository/RepositoryServiceSoapBindingStub
            at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:174)
            at org.jboss.seam.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:44)
            at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
            at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:31)
            at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
            at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:42)
            at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
            at org.jboss.seam.persistence.EntityManagerProxyInterceptor.aroundInvoke(EntityManagerProxyInterceptor.java:26)
            at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
            at org.jboss.seam.persistence.HibernateSessionProxyInterceptor.aroundInvoke(HibernateSessionProxyInterceptor.java:27)
            at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
            at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:106)
            at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:50)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:585)
            at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
            at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
            at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
            at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
            at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
            at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)


            This is the xhtml file:
            <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
             "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
            
            <ui:composition xmlns="http://www.w3.org/1999/xhtml"
             xmlns:s="http://jboss.com/products/seam/taglib"
             xmlns:ui="http://java.sun.com/jsf/facelets"
             xmlns:h="http://java.sun.com/jsf/html"
             xmlns:f="http://java.sun.com/jsf/core"
             xmlns:ice="http://www.icesoft.com/icefaces/component"
             template="layout/template.xhtml">
            
             <ui:define name="body">
             <ice:form enctype="multipart/form-data">
             <ice:panelGrid styleClass="componentLayoutRootTable" columns="1">
             <ice:panelGroup styleClass="formBorderHighlight" style="text-align:left">
             <ice:commandButton value="Aceptar" actionListener="#{mybean.action}"/>
            
             </ice:panelGroup>
             </ice:panelGrid>
             </ice:form>
             </ui:define>
            </ui:composition>


            And this is the backend bean:

            import java.io.Serializable;
            import javax.ejb.Remove;
            import javax.ejb.Stateful;
            import org.jboss.seam.ScopeType;
            import org.jboss.seam.annotations.Destroy;
            import org.jboss.seam.annotations.Name;
            import org.jboss.seam.annotations.Scope;
            
            @Stateful
            @Name("mybean")
            @Scope(ScopeType.SESSION)
            public class test implements testInterface, Serializable{
            
             public void action() {
             System.out.println("una accion-------------------");
             DocumentWebServicesUtil prueba = new DocumentWebServicesUtil("admin","admin");
             prueba.UploadFile("C:/wdlcs.doc","99ecf18d-7fdb-11dc-bc4d-1bc9fd06b088");
             System.out.println("termino----------------------");
             }
            
             @Remove
             @Destroy
             public void destroy() {
             }
            
            }
            


            The DocumentWebServicesUtil it's a class that uses the web service client methods and classes, but it looks that I can't made an instance of this class.
            Do I have to configure some thing?

            I really need help in this...thanks in advance