Java tutorial
/** * Copyright (c) MuleSoft, Inc. All rights reserved. http://www.mulesoft.com * * The software in this package is published under the terms of the CPAL v1.0 * license, a copy of which has been included with this distribution in the * LICENSE.md file. */ package org.mule.module.magento.api; import com.magento.api.Mage_Api_Model_Server_V2_HandlerPortType; import com.magento.api.MagentoServiceLocator; import org.apache.commons.lang.Validate; import javax.validation.constraints.NotNull; import javax.xml.rpc.ServiceException; import java.rmi.RemoteException; public class DefaultAxisPortProvider implements AxisPortProvider { private final String username; private final String password; private final String address; /** * Creates the port provider * * @param username * @param password * @param address */ public DefaultAxisPortProvider(@NotNull String username, @NotNull String password, @NotNull String address) { Validate.notNull(username); Validate.notNull(password); Validate.notNull(address); this.username = username; this.password = password; this.address = address; } public Mage_Api_Model_Server_V2_HandlerPortType getPort() throws RemoteException { MagentoServiceLocator serviceLocator = new MagentoServiceLocator(); serviceLocator.setMage_Api_Model_Server_V2_HandlerPortEndpointAddress(address); try { return serviceLocator.getMage_Api_Model_Server_V2_HandlerPort(); } catch (ServiceException e) { throw new RemoteException("A Service exception occured while trying to create the port", e); } } /** * Need to authenticate before every call * * @return Magento session ID * @throws Exception */ public String getSessionId() throws RemoteException { return getPort().login(username, password); } }