Interfejs umożliwiający pobieranie danych z plików wsdl virtueMart

0

Witam,

mam następujący problem,

Potrzebuję stworzyć program w javie, który umożliwi bezpośrednie pobieranie danych z plików wsdl VirtueMart. Dopiero zaczynam programować, więc znam tylko podstawy i nie bardzo potrafię sobie z tym poradzić. W Internecie znalazłam kilka informacji jak to zrobić spróbowałam napisać coś na tej podstawie ale nie działa.


import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransport;

public class connecting {
	private static String URL = "http://localhost/sklepwww/administrator/components/com_vm_soa/services/VM_OrderWSDL.php?wsdl";

	private static final String NAMESPACE = "http://www.virtuemart.net/VM_Order/";
	private static final String METHOD_NAME = "getOrder";
	
	
	public static void main(String[] args) {
		
		
		SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);

		SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
				SoapEnvelope.VER11);

		envelope.setOutputSoapObject(request);

		HttpTransport http = new HttpTransport(URL);

		try {
			http.call(METHOD_NAME, envelope);
			SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
			System.out.print(response);

		} catch (Exception ex) {
			System.out.println("URL:" + URL);
			ex.printStackTrace();
		}

	}
	
	

}

otrzymuję błędy:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/microedition/io/Connector
at org.ksoap2.transport.ServiceConnectionMidp.<init>(Unknown Source)
at org.ksoap2.transport.HttpTransport.getServiceConnection(Unknown Source)
at org.ksoap2.transport.HttpTransport.call(Unknown Source)
at VirtueMart.connecting.main(connecting.java:30)
Caused by: java.lang.ClassNotFoundException: javax.microedition.io.Connector
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)

Tak jak mówię dopiero zaczynam pracę z Javą i od razu dostałam takie jak dla mnie dość trudne zadanie, dlatego bardzo proszę o pomoc.

Próbowałam też inną metodą:


import java.net.URL;  
import javax.xml.namespace.QName;  
import javax.xml.rpc.Service;  
import javax.xml.rpc.ServiceFactory;  

public class connecting {
	
	
	public static void main(String[] args) {
		  {  
		    try {  
		      QName serviceName = new QName("http://www.virtuemart.net/VM_Order/","VM_Order");  
		      URL wsdlLocation = new URL("http://localhost/sklepwww/administrator/components/com_vm_soa/services/VM_OrderWSDL.php?wsdl");  
		          // Service  
		      ServiceFactory factory = ServiceFactory.newInstance();  
		      Service service = factory.createService(wsdlLocation,serviceName);  
		    }  
		    catch (Throwable t) {  
		      t.printStackTrace();  
		    }  
		  }
	}
	
	

}

ale otrzymuję błędy:

javax.xml.rpc.ServiceException: java.lang.ClassNotFoundException: org.apache.axis.client.ServiceFactory
at javax.xml.rpc.ServiceFactory.newInstance(ServiceFactory.java:69)
at VirtueMart.connecting.main(connecting.java:17)

Podejrzewam, że mój problem z połączeniem jest również związany z zabezpieczeniami virtuemarta. Podczas łączenia przez wtyczkę eclipse trzeba podać hasło i login. Na tronie virtuemart jest podany kod jakim można się łączyć : http://www.virtuemart-datamanager.com/index.php?option=com_content&view=article&id=53:java-soap-client&catid=27:new-to-joomla&Itemid=44

z tym, że nigdzie nie mogę znaleźć biblioteki do tego potrzebnej...vm_soap_client.jar

0

Hmmm nie masz bibloteki?

0

Do obu napisanych wyżej programów mam dołączone wszystkie wymagane biblioteki ale te programy nie działają, nie wkleiłam po prostu całości kodu. Tak jak napisałam wyżej, ponieważ te metody zawiodły chciałam skorzystać z metody zaprezentowanej na stronie virtuemart ale nie mogę znaleźć biblioteki, która jest do tego wymagana.

1 użytkowników online, w tym zalogowanych: 0, gości: 1