Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * JBoss, Home of Professional Open Source.
   * Copyright 2006, Red Hat Middleware LLC, and individual contributors
   * as indicated by the @author tags. See the copyright.txt file in the
   * distribution for a full listing of individual contributors.
   *
   * This is free software; you can redistribute it and/or modify it
   * under the terms of the GNU Lesser General Public License as
   * published by the Free Software Foundation; either version 2.1 of
  * the License, or (at your option) any later version.
  *
  * This software is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  * Lesser General Public License for more details.
  *
  * You should have received a copy of the GNU Lesser General Public
  * License along with this software; if not, write to the Free
  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 package org.jboss.wsf.stack.metro;
 
 
 
 
An invoker for JSE endpoints

Author(s):
Thomas.Diesler@jboss.org
Since:
10-May-2007
 
 public class InvokerJSE extends Invoker
 {
    private final InstanceResolver resolver;
 
    public InvokerJSE(InstanceResolver resolver)
    {
       this. = resolver;
    }
 
    @Override
    public void start(WSWebServiceContext webServiceCtxWSEndpoint endpoint)
    {
       .start(webServiceCtxendpoint);
    }
 
    @Override
    public void dispose()
    {
       .dispose();
    }
 
    @Override
    public <T> T invokeProvider(Packet p, T arg)
    {
       Object targetBean = .resolve(p);
       return ((Provider<T>)targetBean).invoke(arg);
    }
 
    @Override
    public Object invoke(Packet pMethod mObject... args)
    {
       Endpoint endpoint = EndpointAssociation.getEndpoint();
       InvocationHandler invocationHandler = endpoint.getInvocationHandler();
       Invocation invocation = invocationHandler.createInvocation();
       InvocationContext invContext = invocation.getInvocationContext();
       invocation.setJavaMethod(m);
       invocation.setArgs(args);
 
       Object retObj = null;
       try
       {
          Object targetBean = .resolve(p);
          invContext.setTargetBean(targetBean);
          invocationHandler.invoke(endpointinvocation);
          retObj = invocation.getReturnValue();
       }
       catch (Exception ex)
       {
          handleException(ex);
       }
 
      return retObj;
   }
   private void handleException(Exception ex)
   {
      if (ex instanceof InvocationTargetException)
         throw (InvocationTargetException)ex;
      if (ex instanceof IllegalAccessException)
         throw (IllegalAccessException)ex;
      throw new WebServiceException(ex);
   }
New to GrepCode? Check out our FAQ X