Instantiate class from name

Hi all
     i need to instanciate a class by name. i know that i can:
          [code]
                    Class<?> clazz = Class.forName("com.MyClass");
          Constructor<?> constructor = clazz.getConstructor(String.class, Integer.class);
          Object instance = constructor.newInstance();
          [/code]
    My problem is that there is the possibility thath, some classes have the same name and the same package, because are deployed in different jars, is possible to distinct that cases?

> is possible to distinct that cases?
Just to be clear...is it possible to do this? Yes.
Is it easy? No.  It is however rather straight forward once you know how class loaders work.
Keep in mind that the above only pertains to loading the class.   It is still possible that complications might arise if one isn't aware that they are in fact two completely different classes.
Also if it was me I certainly wouldn't try to load them using the standard class path. 

Similar Messages

  • Instantiate class from jar file

    Need a quick hand...little bit of a rush here.
    How do I go about instantiating a class from a jar file?
    If my jar file resides at c:/MyApp/MyJar.jar
    The contents of the jar file are:
    meta-inf/MANIFEST.MF
    A.java
    How do I go about creating an instance of A? I see people saying to use the URLClassLoader, but I can't find any good sample code to clarify how it's done. Assuming I already know the name of the class I'm instantiating, could someone show me how the URLClassLoader is used please? Also, please note that the jar file is NOT in my classpath, and I am not able to put it there....because it needs to be dynamically loaded as a plugin. I'm not sure if that matters or not with regards to the instantiation.

    Thanks so much for that..I think it's just about what I need. However, I'm still running into a bit of a snag. After executing the code and trying to run a method to print something out from the object I just loaded, it instead prints a memory location. So I don't think it is quite working as intended. Here's the code I'm working with at the moment....
    String jarPath = baseDir + "myApp/plugins/" + fileName;
    Manifest mf = jar.getManifest();
    Attributes att = mf.getMainAttributes();
    String className = att.getValue("Main-Class");
    //System.out.println(className);
    File file = new File(jarPath);
    URL[] urls = new URL[] {file.toURL()};
    ClassLoader loader = URLClassLoader.newInstance(urls);
    Class dynmicallyLoadedClass = Class.forName(className, true, loader);
    PlugIn plugin = (PlugIn) dynmicallyLoadedClass.newInstance();
    System.out.println(plugin.toString());  //This prints out "TMGImporter@1ce50a9" instead of what it's supposed to....Also, I am using Java 1.4.2_08 so I can't use generics. There are no error messages, just the wrong output. The jar this is using actually contains two files, besides the manifest. The TMGImporter (which Im trying to instantiate) and a TMGImporter$1 anonymous inner class. There is no package declaration on the class.
    Any thoughts?

  • Failure when C++ code instantiate class from dll

    Hi,
    I am building a simple Java -> .NET bridge using JNI and a C++ wrapper, as demonstrated in several codeproject articles. And there is no problem creating and making the bridge work. However, the .NET code uses a dll, which is registered with regsvr32 and added as a reference. And there is no problem with this one when I test it in the .NET environment. But when I try to test it in the Java side, it takes down the VM with the error:
    # Problematic frame:
    # C  [kernel32.dll+0x1b09e]It also fails if I import the interopt dll into the C++ project. I have identified the problem to the point where I instantiate the class that exists in the dll file. When that line of code is run, it crashes. Can anyone help me identifying the problem why this doesn't work?
    Java snippet:
    static {
            System.loadLibrary("XMLWrapper");
        public static void main(String[] args) {
            Core core = new Core();      
            String s = core.getXML("Test","HelloWorld","utf-8");
            System.out.println("Reply: " + s);                      
    public class Core {
        public Core() {
        public native String getXML(String str, String text, String encoding);
        }C++ snippet, just wraps around the .NET dll:
    #using <mscorlib.dll>
    #using "XMLModule.dll"
    using namespace xmlLib;
    using namespace System;
    public __gc class XMLWrapper
         public:          
              XMLWrapper() {          
                                  core = new Core();
                       string getXML(wstring &str, wstring &text, wstring &enc)  {                              
                                   return marshalString( core->GetXML(new String(str.c_str()), new String(text.c_str()), new String(enc.c_str())) );       
              string marshalString ( String* s );
         private:
              Core __gc *core;C# .NET snippet:
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Configuration;
    using System.Xml;
    namespace xmlLib
        public class Core
            x3Com.X3Class kernel;
            public Core()
            public string GetXML(string str, string text, string enc)
                  kernel = new x3Com.X3Class();
                  kernel.Init(str)
                  ---x3Com.dll is the dll file added in the .NET environment. All the dll files produced by .NET, C++ and the external x3Com.dll is put in a directory which java.library.path points to. x3Com also resides in the System32 directory.
    Please help!
    Edited by: Gasswire on Aug 22, 2008 8:42 AM
    Edited by: Gasswire on Aug 22, 2008 8:44 AM

    That is just the MC++ wrapper.
    Here is the signature and implementation:
    /* DO NOT EDIT THIS FILE - it is machine generated */
    #include <jni.h>
    /* Header for class xmllib_Core */
    #ifndef _Included_xmllib_Core
    #define _Included_xmllib_Core
    #ifdef __cplusplus
    extern "C" {
    #endif
    * Class:     xmllib_Core
    * Method:    getXML
    * Signature: ()Ljava/lang/String;
    JNIEXPORT jstring JNICALL Java_xmllib_Core_getXML
      (JNIEnv *, jobject, jstring, jstring, jstring);
    #ifdef __cplusplus
    #endif
    #endifWith implementation:
    JNIEXPORT jstring JNICALL Java_xmllib_Core_getXML(JNIEnv *env, jobject obj, jstring str, jstring text, jstring enc)
         XMLWrapper *xw = new XMLWrapper(); //The wrapper class...
         return env->NewStringUTF( (xw->getXML(marshalString(str), marshalString(text), marshalString(enc))).c_str() );               
    }Okay?
    As I tried to mention. The bridge does WORK! If I comment out the instantiation of x3Com.x3Class and just return a string from the getXML class everything is okay. This tells me that the signature, the marshalling and everything up to the point of using the third party dll works.
    And as mentioned before. The x3Com.dll works in the test app in .NET, so everything is okay inside this dll. But it crashes the Java VM when the x3Class is instatiated. And my question is why this is happening! Any ideas?

  • How to instantiate a .class from a JSP?

    Hi,
    probably it's a simple problem, byt I'm new in JSP and I couldn't work it out.
    I'm converting a SSJS Netscape Application to JSP. My needing is to write a Java .class containing only static methods, to call them from the JSP pages.
    For trying, I wrote a simple class that I call from a JSP page, but I get this error:
    Error: 500
    Location: /JSP24H/cap01/Simple2.jsp
    Internal Servlet Error:
    org.apache.jasper.JasperException: Unable to compile class for
    JSPC:\tomcat\work\localhost_8080%2FJSP24H\_0002fcap_00030_00031_0002fSimple_00032_0002ejspSimple2_jsp_0.java:80:
    Incompatible type for =. Can't convert void to java.lang.String.
    v = GenFunction.messaggio();
    ^
    This is the JSP instantiating the Java class:
    <HTML>
    <HEAD><TITLE>A Simple JSP</TITLE></HEAD>
    <BODY>
    <FONT COLOR="blue" FACE="Trebuchet">
    <CENTER>
    <%@ page import = "GenFunction" %>
    <% out.println("My name is Charly !" + "<br>"); %>
    <%
    String v = " ";
    v = GenFunction.messaggio();
    out.println( v );
    %>
    </CENTER>
    </FONT>
    </BODY>
    </HTML>
    And this is the class instantiated from JSP:
    public class GenFunction {
    public static void main (String args[]) {
    public static String messaggio() {
    String a;
    a = " Hello world !";
    return a;
    In order to be sure about what I'm doing, I opened a DOS window and I called the class within the following:
    public class call_Class {
    public static void main (String args[])
    String v;
    GenFunction x = new GenFunction();
    v = x.messaggio();
    System.out.println(v);
    When I instantiate the class from DOS it's all right, why not from JSP. It seems to be returning a void value (I tried with casting too but without success).
    Thanks !

    Do you have multiple versions of classes in the server CLASSPATH somehwhere? If you have changed the class, and not bounced the server, try bouncing the server(may be using cached class)
    -Mak

  • Problem:Can't instantiate class

    I tried for many hours to solve the problem but in vain.
    here is the Exception i got from tomcat:javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.faces.FacesException: javax.faces.FacesException: Can't instantiate class: 'core.walid.NwindManagedBean'.. core.walid.NwindManagedBean
         org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:844)
         org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
         org.apache.jsp.index_jsp._jspService(index_jsp.java:91)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
         org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
    cause m�re
    javax.faces.el.EvaluationException: javax.faces.FacesException: javax.faces.FacesException: Can't instantiate class: 'core.walid.NwindManagedBean'.. core.walid.NwindManagedBean
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:206)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:154)
         javax.faces.component.UIData.getValue(UIData.java:527)
         javax.faces.component.UIData.getDataModel(UIData.java:856)
         javax.faces.component.UIData.setRowIndex(UIData.java:379)
         com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:65)
         javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:683)
         javax.faces.component.UIData.encodeBegin(UIData.java:681)
         javax.faces.webapp.UIComponentTag.encodeBegin(UIComponentTag.java:591)
         javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:543)
         com.sun.faces.taglib.html_basic.DataTableTag.doEndTag(DataTableTag.java:491)
         org.apache.jsp.index_jsp._jspx_meth_h_dataTable_0(index_jsp.java:161)
         org.apache.jsp.index_jsp._jspx_meth_c_view_0(index_jsp.java:116)
         org.apache.jsp.index_jsp._jspService(index_jsp.java:80)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
         org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)here is the bean i don't see any problelme it uses JDBC to access the database/*
    * NwindManagedBean.java
    * Created on 4 mars 2007, 01:02
    package Core.walid;
    import java.sql.*;
    import javax.sql.*;
    import java.util.ArrayList;
    import java.util.Collection;
    import java.io.*;
    import javax.servlet.jsp.jstl.sql.*;
    * @author walid
    public class NwindManagedBean implements Serializable{
        private String tableName="Customers";
        private ResultSet resultSet;
        private Connection connection;
        /** Creates a new instance of NwindManagedBean */
        public NwindManagedBean() {
        public String getTableName(){
        return tableName;
        public void setTableName(String tableName){
        this.tableName=tableName;
        public void open(){
        String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
        String url = "jdbc:odbc:Nwind";
        String username = "";
        String password = "";
        try{
            Class.forName(driver);
            connection =DriverManager.getConnection(url,username,password);}
        catch(Exception e){System.out.println(e);}
        public void search(){
          try{ Statement statement=connection.createStatement();
           String query ="select * from "+tableName;
            resultSet=statement.executeQuery(query);
        catch(Exception cnfe) {};
        public ResultSet getResultSet(){
            open();
            search();
            return resultSet;
        public void showResults(){
            int i=1;
           try{ while(resultSet.next())
            System.out.println(resultSet.getString(i));
            i++;
           catch(Exception e){System.out.println("erreur sql"+e);}
    }i declared the bean in faces-config<faces-config>
        <managed-bean>
            <managed-bean-name>NwindManagedBean</managed-bean-name>
            <managed-bean-class>core.walid.NwindManagedBean</managed-bean-class>
            <managed-bean-scope>request</managed-bean-scope>
        </managed-bean>
    </faces-config>and finally the jsf page to list the database contents<%@ taglib uri="http://java.sun.com/jsf/core" prefix="c" %>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    <html>
       <HEAD><TITLE>Northwind Customers</title>
        </HEAD>
        <body>
            <center>
                <table border="5">
                    <tr><th class="Northwind customers"></th></tr>
                </table>
                <p>
                <c:view>
                    <h:dataTable value="#{NwindManagedBean.resultSet}"
                    var="dbRow"
                    border="1"
                    >
                    <h:column>
                    <c:facet name="header">
                    <c:verbatim>Company name</c:verbatim>
                    </c:facet>
                    <h:outputText value="#{dbRow.CompanyName}"/>
                    </h:column>
                    <h:column>
                    <c:facet name="header">
                    <c:verbatim>Address</c:verbatim>
                    </c:facet>
                    <h:outputText
                    value="#{dbRow.Address}"/>
                    </h:column>
                    <h:column>
                    <c:facet name="header">
                    <c:verbatim>City</c:verbatim>
                    </c:facet>
                    <h:outputText
                    value="#{dbRow.City}"/>
                    </h:column>
                    </h:dataTable>
                </c:view>
                </center>
        </body>
    </html>

    Hello,
    I'm not sure, but i would try to put the package only in lowercase.
    Your class pakageis declared with first Upper case letter.
    And in you faces-config file, you declared with lower case.
    Note : it's recommanded to use only lower case for package name.
    Regards,
    Sebastien Degardin

  • Com.sun.faces.mgbean.ManagedBeanCreationException: Cant instantiate class..

    I create a enterprise application using jsf 2.0, ejb3, primefaces 2 and I want to show data in table immediately after ejb call findAll() method. But it's always appear: "can't instantiate class". Here is my code:
    index.xhtml
            <h:form>
                <p:dataTable id="tbl" var="p" value="#{Product.products}" >
                    <p:column>
                        <f:facet name="header">
                            Product Id
                        </f:facet>
                        <h:outputText value="#{p.productID}" />
                    </p:column>
                    <p:column>
                        <f:facet name="header">
                            Product Name
                        </f:facet>
                        <h:outputText value="#{p.productName}" />
                    </p:column>
                    <p:column>
                        <f:facet name="header">
                            Unit Price
                        </f:facet>
                        <h:outputText value="#{p.unitPrice}" />
                    </p:column>
                </p:dataTable>
            </h:form>
    package myEntity;
    @Entity
    @Table(name = "Products")
    @NamedQueries({
        @NamedQuery(name = "Products.*findAll*", query = "SELECT p FROM Products p"),
    public class Products implements Serializable {
        private static final long serialVersionUID = 1L;
        @Id
        @Basic(optional = false)
        @Column(name = "productID")
        private Integer productID;
        @Basic(optional = false)
        @Column(name = "productName")
        private String productName;
        @Basic(optional = false)
        @Column(name = "unitPrice")
        private double unitPrice;
        public Products() {
        public Products(Integer productID) {
            this.productID = productID;
        public Products(Integer productID, String productName, double unitPrice) {
            this.productID = productID;
            this.productName = productName;
            this.unitPrice = unitPrice;
        public Integer getProductID() {
            return productID;
        public void setProductID(Integer productID) {
            this.productID = productID;
        public String getProductName() {
            return productName;
        public void setProductName(String productName) {
            this.productName = productName;
        public double getUnitPrice() {
            return unitPrice;
        public void setUnitPrice(double unitPrice) {
            this.unitPrice = unitPrice;
    package mySessionBean;
    @Stateless
    public class ProductsFacade implements ProductsFacadeLocal {
        @PersistenceContext(unitName = "demoProduct-ejbPU")
        private EntityManager em;
        public List<Products> *findAll*() {
            CriteriaQuery cq = em.getCriteriaBuilder().createQuery();
            cq.select(cq.from(Products.class));
            return em.createQuery(cq).getResultList();
    package myManagedBean;
    @ManagedBean(name="Product")
    @RequestScoped
    public class Product {
        @EJB
        private ProductsFacadeLocal productsFacade;
        private List<Products> products;
        /** Creates a new instance of Product */
        public Product() {
            *products = productsFacade.findAll();*
        public List<Products> getProducts() {
            return products;
        public void setProducts(List<Products> products) {
            this.products = products;
    An Error Occurred:
    Cant instantiate class: myManagedBean.Product.
    +- Stack Trace
    com.sun.faces.mgbean.ManagedBeanCreationException: Cant instantiate class: myManagedBean.Product.
         at com.sun.faces.mgbean.BeanBuilder.newBeanInstance(BeanBuilder.java:193)
    Caused by: java.lang.NullPointerException
         at myManagedBean.Product.<init>(Product.java:36)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
         at java.lang.Class.newInstance0(Class.java:355)
         at java.lang.Class.newInstance(Class.java:308)
         at com.sun.faces.mgbean.BeanBuilder.newBeanInstance(BeanBuilder.java:188)

    This is just baffling. The OP 'created' an enterprise application, but doesn't know the basics of the basics that is null-references? That is like knowing how to do your taxes without knowing how to add and subtract.

  • Drop down problem -javax.faces.FacesException: Can't instantiate class: ''.

    Hi,
    I am using jsf 1.1
    I am trying to populate a simple drop down in MyJsp.jsp with the List values generated in ContactsListBean.java. I am copying the code here for reference.
    when I launch the page (forwarding to this MyJsp.jsp in index.jsp) I am getting this error below. Can anyone help me out what is it that I am doing wrong?? I am unable to trace out what's wrong. I have even tried the same logic with h:selectOneListbox also but I get the same error..
    Any help/advice would be highly appreciated, Thanks in advance.
    org.apache.jasper.JasperException: javax.servlet.jsp.JspException: javax.faces.FacesException: javax.faces.FacesException: Can't instantiate class: ''.
    *     org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:460)*
    *     org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:355)*
    *     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)*
    *     org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)*
    *     javax.servlet.http.HttpServlet.service(HttpServlet.java:803)*
    *     com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)*
    *     com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:147)*
    *     com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)*
    *     com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)*
    *     com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)*
    *     javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)*
    *     org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:686)*
    *     org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:656)*
    *     org.apache.jsp.index_jsp._jspService(index_jsp.java:71)*
    *     org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)*
    *     javax.servlet.http.HttpServlet.service(HttpServlet.java:803)*
    *     org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)*
    *     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)*
    *     org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)*
    *     javax.servlet.http.HttpServlet.service(HttpServlet.java:803)*
    MyJsp.jsp
    <%@ page language="java" pageEncoding="ISO-8859-1"%>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
         <title>My JSF 'MyJsp.jsp' starting page</title>
         <meta http-equiv="pragma" content="no-cache">
         <meta http-equiv="cache-control" content="no-cache">
         <meta http-equiv="expires" content="0">   
         <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
         <meta http-equiv="description" content="This is my page">
         <!--
         <link rel="stylesheet" type="text/css" href="styles.css">
         -->
    </head>
    <body>
       <f:view>
             This is my JSF JSP page. <br><h:form>
         <h:selectOneMenu id="loc1" value="#{contactsListBean.selectedLocation}">
                 <f:selectItems id="ll1" value="#{contactsListBean.locationList}"/>
                    </h:selectOneMenu> 
        </h:form>
    </f:view>
    </body>
    </html>
    ContactsListBean.java
    public class ContactsListBean {
         private java.util.List locationList = new ArrayList();;
         private java.lang.String selectedLocation;
         public ContactsListBean() {
              System.out.println("Construnction list....");
              locationList.add(new SelectItem("test1","test1",""));
              locationList.add(new SelectItem("test2","test2",""));
              locationList.add(new SelectItem("test3","test3",""));
         public java.util.List getLocationList() {
               System.out.println("returning LIST OF SIZE "+locationList.size());
               return locationList;
         public void setLocationList(java.util.List locationList) {
              this.locationList = locationList;
              System.out.println("got list size..."+locationList.size());
         public java.lang.String getSelectedLocation() {
              return selectedLocation;
         public void setSelectedLocation(java.lang.String selectedLocation) {
              this.selectedLocation = selectedLocation;
    faces-config.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
                                  "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
    <faces-config>
    <managed-bean>
      <managed-bean-name>contactsListBean</managed-bean-name>
      <managed-bean-class>ContactsListBean</managed-bean-class>
      <managed-bean-scope>session</managed-bean-scope>
      <managed-property>
       <property-name>locationList</property-name>
       <property-class>java.util.List</property-class>
       <value/>
      </managed-property>
      <managed-property>
       <property-name>selectedLocation</property-name>
       <property-class>java.lang.String</property-class>
       <value/>
      </managed-property>
    </managed-bean>
    </faces-config>
    web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
      <context-param>
        <param-name>javax.faces.CONFIG_FILES</param-name>
        <param-value>/WEB-INF/faces-config.xml</param-value>
      </context-param>
      <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
      </servlet>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
      </servlet-mapping>
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
    </web-app>

    Your class is now been put in a package? Good, now the next step is to remove all of those managed-property entries from the faces-config.xml. It makes no sense because 1) you already created the list in the backing bean and 2) you didn't assign any value to the item in the managed property.

  • Loading classes from another jar file

    I've set up my jnpl file so that it references a core jar file (contains main() function). The jnlp also references another jar file (app.jar) which contains class files that I load and instantiate dynamically (using ClassLoader). The core.jar file contains a manifest that includes a reference to app.jar.
    The app works fine when I use "java -jar core.jar" from the command line.
    However, when I wrap the jars using jnlp, I always get a null pointer exception because it cannot find any class that is in the app.jar file. I've tried different strategies, such as trying to load a class file that sits on the server (in a jar file and not in a jar file), but that also fails if I use jnlp (However, it works if I use "java -jar core.jar")
    Any ideas what is going on?

    This is the "OckCore.jar" manifest before signing:
    Manifest-Version: 1.0
    Main-Class: com.Ock.OckCore.OckApp
    Class-Path: . OckMaths.jar
    Created-By: 1.4.0-beta3 (Sun Microsystems Inc.)
    Name: com.Ock.OckCore.OckApp.class
    Java-Bean: FalseThis is the manifest after signing:
    Manifest-Version: 1.0
    Main-Class: com.Ock.OckCore.OckApp
    Created-By: 1.4.0-beta3 (Sun Microsystems Inc.)
    Class-Path: http://hazel/Ock/. http://hazel/Ock/OckMaths.jar
    Name: com/Ock/OckCore/OckApp.class
    SHA1-Digest: KRZmOryizx9o2L61nN+DbUYCgwo=I have removed a load of irrelevant stuff from the "after" manifest to keep it readable.
    note that :-
    The OckApp.class loads normally from webstart and tries to load a class from OckMaths.jar.
    I can prove that OckApp.class does load because it creates a log file when it does.
    The OckApp.class tries to load a class from the OckMaths.jar. This fails if webstart is used but works if OckCore is launched using "java -jar OckCore.jar".
    The jars do exist at the location specified by the manifest.
    The application launches normally if I use "java -Jar OckCore.jar"
    Here is the jnlp file
    <?xml version='1.0' encoding='UTF-8'?>
    <jnlp
         spec="1.0"
         codebase="http://hazel/Ock"
         href="OckMaths.jnlp">
         <information>
              <title>Ock Maths Demo</title>
              <vendor>Rodentware Inc</vendor>
              <description>Demo of a ported app running as a Java Webstart application</description>
              <description kind="short">An app running as a Java Webstart application"></description>
              <offline-allowed/>
         </information>
         <security>
              <all-permissions/>          
         </security>
         <resources>
              <j2se version="1.3"/>
              <jar href="OckCore.jar"/>
              <jar href="OckMaths.jar"/>
         </resources>
         <application-desc main-class="com.Ock.OckCore.OckApp">
    </jnlp> I have also signed the jars outside of a webdirectory. I get the following manifest file:
    Manifest-Version: 1.0
    Main-Class: com.Ock.OckCore.OckApp
    Created-By: 1.4.0-beta3 (Sun Microsystems Inc.)
    Class-Path: . OckMaths.jar
    Name: com/Ock/OckCore/OckApp.class
    SHA1-Digest: KRZmOryizx9o2L61nN+DbUYCgwo=
    note that :-
    The jars do exist at the location specified by the manifest.
    The application launches normally if I use "java -Jar OckCore.jar".
    The application doesn't launch from webstart.
    I've found that cache, but the jar files have been renamed.
    OckCore.jar is anOckCore.jar, etc... so I'm not sure if trying to write a cmdline will work anyway.

  • Class for Name

    Hi.
    I want to use the class.forName method and I have the class name and its filepath..
    but the problem is in a folder at the same level as my classes.
    e.g.
    C:\PROJECT\CLASSES\ - location of application classes
    C:\PROJECT\OTHER\ - locatin of other classes that I want to instantiate dynamically.
    Could anyone teach me how I can access the classes from the OTHER folder?
    Thanks

    Could anyone teach me how I can access the classes from the OTHER folder?Add that other directory to your classpath so your jvm can find the classes in there.
    kind regards,
    Jos

  • Problem to generate classes from a gsoap server's wsdl with wsimport

    Hello,
    I trie for a long time to generate my client classes from a wsdl file with wsimport. The wsdl file was generated by gsoap.
    Here, the wsdl file :
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions name="form"
    targetNamespace="https://enterprise-name-masked.com/form.wsdl"
    xmlns:tns="https://enterprise-name-masked.com/form.wsdl"
    xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
    xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:generic="generic"
    xmlns:xop="http://www.w3.org/2004/08/xop/include"
    xmlns:xmime4="http://www.w3.org/2004/11/xmlmime"
    xmlns:form="form"
    xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap12/"
    xmlns:MIME="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:DIME="http://schemas.xmlsoap.org/ws/2002/04/dime/wsdl/"
    xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/"
    xmlns="http://schemas.xmlsoap.org/wsdl/">
    <types>
    <schema targetNamespace="generic"
      xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
      xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:generic="generic"
      xmlns:xop="http://www.w3.org/2004/08/xop/include"
      xmlns:xmime4="http://www.w3.org/2004/11/xmlmime"
      xmlns:form="form"
      xmlns="http://www.w3.org/2001/XMLSchema"
      elementFormDefault="unqualified"
      attributeFormDefault="unqualified">
      <import namespace="http://www.w3.org/2004/08/xop/include"/>
      <import namespace="http://www.w3.org/2004/11/xmlmime"/>
      <import namespace="http://www.w3.org/2003/05/soap-encoding"/>
      <simpleType name="service">
       <restriction base="xsd:string">
        <enumeration value="service-none"/><!-- enum const = 0 -->
        <enumeration value="service-ident"/><!-- enum const = 1 -->
        <enumeration value="service-pool"/><!-- enum const = 2 -->
        <enumeration value="service-hwr"/><!-- enum const = 3 -->
        <enumeration value="service-form"/><!-- enum const = 4 -->
        <enumeration value="service-document"/><!-- enum const = 5 -->
       </restriction>
      </simpleType>
      <simpleType name="result-code">
       <restriction base="xsd:string">
        <enumeration value="ok"/><!-- enum const = 0 -->
        <enumeration value="already-exists"/><!-- enum const = 1 -->
        <enumeration value="not-found"/><!-- enum const = 2 -->
        <enumeration value="cant-connect"/><!-- enum const = 3 -->
        <enumeration value="exception"/><!-- enum const = 4 -->
        <enumeration value="bad-conversion"/><!-- enum const = 5 -->
        <enumeration value="bad-values"/><!-- enum const = 6 -->
        <enumeration value="session-not-found"/><!-- enum const = 7 -->
        <enumeration value="initialization-failed"/><!-- enum const = 8 -->
       </restriction>
      </simpleType>
      <complexType name="result">
       <sequence>
         <element name="code" type="generic:result-code" minOccurs="1" maxOccurs="1"/>
         <element name="details" type="xsd:string" minOccurs="1" maxOccurs="1"/>
       </sequence>
      </complexType>
    </schema>
    <schema targetNamespace="form"
      xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
      xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:generic="generic"
      xmlns:xop="http://www.w3.org/2004/08/xop/include"
      xmlns:xmime4="http://www.w3.org/2004/11/xmlmime"
      xmlns:form="form"
      xmlns="http://www.w3.org/2001/XMLSchema"
      elementFormDefault="unqualified"
      attributeFormDefault="unqualified">
      <import namespace="http://www.w3.org/2004/08/xop/include"/>
      <import namespace="http://www.w3.org/2004/11/xmlmime"/>
      <import namespace="http://www.w3.org/2003/05/soap-encoding"/>
      <simpleType name="area-type">
       <restriction base="xsd:string">
        <enumeration value="area-type-text"/><!-- enum const = 0 -->
        <enumeration value="area-type-numeric"/><!-- enum const = 1 -->
        <enumeration value="area-type-date"/><!-- enum const = 2 -->
        <enumeration value="area-type-checkbox"/><!-- enum const = 3 -->
        <enumeration value="area-type-slider"/><!-- enum const = 4 -->
        <enumeration value="area-type-draw"/><!-- enum const = 5 -->
        <enumeration value="area-type-identifier"/><!-- enum const = 6 -->
       </restriction>
      </simpleType>
      <simpleType name="format">
       <restriction base="xsd:string">
        <enumeration value="A5"/><!-- enum const = 0 -->
        <enumeration value="A4"/><!-- enum const = 1 -->
        <enumeration value="A3"/><!-- enum const = 2 -->
        <enumeration value="A2"/><!-- enum const = 3 -->
        <enumeration value="A1"/><!-- enum const = 4 -->
        <enumeration value="A0"/><!-- enum const = 5 -->
       </restriction>
      </simpleType>
      <complexType name="area">
       <sequence>
         <element name="name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="x" type="xsd:double" minOccurs="1" maxOccurs="1"/>
         <element name="y" type="xsd:double" minOccurs="1" maxOccurs="1"/>
         <element name="width" type="xsd:double" minOccurs="1" maxOccurs="1"/>
         <element name="height" type="xsd:double" minOccurs="1" maxOccurs="1"/>
         <element name="comments" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="area-type" type="form:area-type" minOccurs="1" maxOccurs="1"/>
       </sequence>
      </complexType>
      <complexType name="area-with-string">
       <sequence>
         <element name="area" type="form:area" minOccurs="1" maxOccurs="1"/>
         <element name="string" type="xsd:string" minOccurs="1" maxOccurs="1"/>
       </sequence>
      </complexType>
      <complexType name="area-with-integer">
       <sequence>
         <element name="area" type="form:area" minOccurs="1" maxOccurs="1"/>
         <element name="integer" type="xsd:int" minOccurs="1" maxOccurs="1"/>
       </sequence>
      </complexType>
      <complexType name="area-with-range">
       <sequence>
         <element name="area" type="form:area" minOccurs="1" maxOccurs="1"/>
         <element name="lower" type="xsd:double" minOccurs="1" maxOccurs="1"/>
         <element name="upper" type="xsd:double" minOccurs="1" maxOccurs="1"/>
       </sequence>
      </complexType>
      <complexType name="areas">
       <sequence>
         <element name="areas" type="form:area" minOccurs="0" maxOccurs="unbounded"/>
         <element name="string-areas" type="form:area-with-string" minOccurs="0" maxOccurs="unbounded"/>
         <element name="integer-areas" type="form:area-with-integer" minOccurs="0" maxOccurs="unbounded"/>
         <element name="range-areas" type="form:area-with-range" minOccurs="0" maxOccurs="unbounded"/>
       </sequence>
      </complexType>
      <complexType name="group">
       <sequence>
         <element name="name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="areas" type="form:areas" minOccurs="1" maxOccurs="1"/>
         <element name="groups" type="form:group" minOccurs="0" maxOccurs="unbounded"/>
       </sequence>
      </complexType>
      <complexType name="background">
       <sequence>
         <element name="name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="md5" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="mime" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="num-page" type="xsd:int" minOccurs="1" maxOccurs="1"/>
       </sequence>
      </complexType>
      <complexType name="pattern-type">
       <sequence>
         <element name="print-once" type="xsd:boolean" minOccurs="1" maxOccurs="1"/>
         <element name="has-identifier" type="xsd:boolean" minOccurs="1" maxOccurs="1"/>
       </sequence>
      </complexType>
      <complexType name="page">
       <sequence>
         <element name="num-page" type="xsd:int" minOccurs="1" maxOccurs="1"/>
         <element name="format" type="form:format" minOccurs="1" maxOccurs="1"/>
         <element name="is-portrait" type="xsd:boolean" minOccurs="1" maxOccurs="1"/>
         <element name="background" type="form:background" minOccurs="1" maxOccurs="1"/>
         <element name="areas" type="form:areas" minOccurs="1" maxOccurs="1"/>
         <element name="groups" type="form:group" minOccurs="0" maxOccurs="unbounded"/>
       </sequence>
      </complexType>
      <complexType name="document-new">
       <sequence>
         <element name="name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="pattern-type" type="form:pattern-type" minOccurs="1" maxOccurs="1"/>
         <element name="form-pages" type="form:page" minOccurs="0" maxOccurs="unbounded"/>
       </sequence>
      </complexType>
      <complexType name="document">
       <sequence>
         <element name="uuid" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="pattern-type" type="form:pattern-type" minOccurs="1" maxOccurs="1"/>
         <element name="form-pages" type="form:page" minOccurs="0" maxOccurs="unbounded"/>
       </sequence>
      </complexType>
      <complexType name="document-info">
       <sequence>
         <element name="uuid" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
         <element name="page-count" type="xsd:int" minOccurs="1" maxOccurs="1"/>
       </sequence>
      </complexType>
      <complexType name="Data">
       <sequence>
         <element ref="xop:Include" minOccurs="1" maxOccurs="1"/>
       </sequence>
         <attribute ref="xmime4:contentType" use="optional"/>
      </complexType>
      <complexType name="login-response">
       <sequence>
         <element name="result" type="generic:result" minOccurs="1" maxOccurs="1"/>
         <element name="session" type="xsd:string" minOccurs="1" maxOccurs="1"/>
       </sequence>
      </complexType>
      <!-- operation request element -->
      <element name="login" type="xsd:string"/>
      <!-- operation request element -->
      <element name="password" type="xsd:string"/>
      <!-- operation response element -->
      <element name="result" type="generic:result"/>
      <!-- operation response element -->
      <element name="uuid" type="xsd:string"/>
      <!-- operation request element -->
      <element name="session" type="xsd:string"/>
      <!-- operation request element -->
      <element name="aform" type="form:document-new"/>
      <!-- operation response element -->
      <element name="form" type="form:document"/>
      <!-- operation request element -->
      <element name="md5" type="xsd:string"/>
      <!-- operation response element -->
      <element name="data" type="form:Data"/>
      <!-- operation response element -->
      <element name="exists" type="xsd:boolean"/>
      <!-- operation response element -->
      <element name="backgrounds" type="form:background"/>
      <!-- operation response element -->
      <element name="forms" type="form:document"/>
      <!-- operation response element -->
      <element name="forms-info" type="form:document-info"/>
    </schema>
    </types>
    <message name="login">
    <part name="login" element="form:login"/>
    <part name="password" element="form:password"/>
    </message>
    <message name="uuid-response">
    <part name="result" element="form:result"/>
    <part name="uuid" element="form:uuid"/>
    </message>
    <message name="quit">
    <part name="session" element="form:session"/>
    </message>
    <message name="response">
    <part name="result" element="form:result"/>
    </message>
    <message name="new-form">
    <part name="session" element="form:session"/>
    <part name="aform" element="form:aform"/>
    </message>
    <message name="free-form">
    <part name="session" element="form:session"/>
    <part name="uuid" element="form:uuid"/>
    </message>
    <message name="get-form">
    <part name="session" element="form:session"/>
    <part name="uuid" element="form:uuid"/>
    </message>
    <message name="document-response">
    <part name="result" element="form:result"/>
    <part name="form" element="form:form"/>
    </message>
    <message name="get-file">
    <part name="session" element="form:session"/>
    <part name="md5" element="form:md5"/>
    </message>
    <message name="data-response">
    <part name="result" element="form:result"/>
    <part name="data" element="form:data"/>
    </message>
    <message name="set-file">
    <part name="session" element="form:session"/>
    <part name="md5" element="form:md5"/>
    <part name="data" element="form:data"/>
    </message>
    <message name="file-exists">
    <part name="session" element="form:session"/>
    <part name="md5" element="form:md5"/>
    </message>
    <message name="exists-response">
    <part name="result" element="form:result"/>
    <part name="exists" element="form:exists"/>
    </message>
    <message name="list-form-backgrounds">
    <part name="session" element="form:session"/>
    <part name="uuid" element="form:uuid"/>
    </message>
    <message name="list-backgrounds-response">
    <part name="result" element="form:result"/>
    <part name="backgrounds" element="form:backgrounds"/>
    </message>
    <message name="list-forms">
    <part name="session" element="form:session"/>
    </message>
    <message name="list-forms-response">
    <part name="result" element="form:result"/>
    <part name="forms" element="form:forms"/>
    </message>
    <message name="list-forms-info">
    <part name="session" element="form:session"/>
    </message>
    <message name="list-forms-info-response">
    <part name="result" element="form:result"/>
    <part name="forms-info" element="form:forms-info"/>
    </message>
    <portType name="formPortType">
    <operation name="login">
      <documentation>Service definition of function form__login</documentation>
      <input message="tns:login"/>
      <output message="tns:uuid-response"/>
    </operation>
    <operation name="quit">
      <documentation>Service definition of function form__quit</documentation>
      <input message="tns:quit"/>
      <output message="tns:response"/>
    </operation>
    <operation name="new-form">
      <documentation>Service definition of function form__new_form</documentation>
      <input message="tns:new-form"/>
      <output message="tns:uuid-response"/>
    </operation>
    <operation name="free-form">
      <documentation>Service definition of function form__free_form</documentation>
      <input message="tns:free-form"/>
      <output message="tns:response"/>
    </operation>
    <operation name="get-form">
      <documentation>Service definition of function form__get_form</documentation>
      <input message="tns:get-form"/>
      <output message="tns:document-response"/>
    </operation>
    <operation name="get-file">
      <documentation>Service definition of function form__get_file</documentation>
      <input message="tns:get-file"/>
      <output message="tns:data-response"/>
    </operation>
    <operation name="set-file">
      <documentation>Service definition of function form__set_file</documentation>
      <input message="tns:set-file"/>
      <output message="tns:response"/>
    </operation>
    <operation name="file-exists">
      <documentation>Service definition of function form__file_exists</documentation>
      <input message="tns:file-exists"/>
      <output message="tns:exists-response"/>
    </operation>
    <operation name="list-form-backgrounds">
      <documentation>Service definition of function form__list_form_backgrounds</documentation>
      <input message="tns:list-form-backgrounds"/>
      <output message="tns:list-backgrounds-response"/>
    </operation>
    <operation name="list-forms">
      <documentation>Service definition of function form__list_forms</documentation>
      <input message="tns:list-forms"/>
      <output message="tns:list-forms-response"/>
    </operation>
    <operation name="list-forms-info">
      <documentation>Service definition of function form__list_forms_info</documentation>
      <input message="tns:list-forms-info"/>
      <output message="tns:list-forms-info-response"/>
    </operation>
    </portType>
    <binding name="form" type="tns:formPortType">
    <SOAP:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="login">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    <operation name="quit">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    <operation name="new-form">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    <operation name="free-form">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    <operation name="get-form">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    <operation name="get-file">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    <operation name="set-file">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    <operation name="file-exists">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    <operation name="list-form-backgrounds">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    <operation name="list-forms">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    <operation name="list-forms-info">
      <SOAP:operation style="rpc"/>
      <input>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </input>
      <output>
         <SOAP:body parts="parameters" use="literal" namespace="form"/>
      </output>
    </operation>
    </binding>
    <service name="form">
    <documentation>gSOAP 2.7.10 generated service definition</documentation>
    <port name="form" binding="tns:form">
      <SOAP:address location="https://enterprise-name-masked.com/cgi-bin/form.fcgi"/>
    </port>
    </service>
    </definitions>And here, you can find the generated errors :
    wsimport -s Sources -b http://www.w3.org/2004/08/xop/includ
    e -b http://www.w3.org/2004/11/xmlmime form.wsdl
    parsing WSDL...
    [WARNING] src-resolve: Cannot resolve the name 'xmime4:contentType' to a(n) 'attribute declaration' component.
      line 215 of file:/C:/Documents%20and%20Settings/Hopi_1/Mes%20documents/Alexandre/Recherche%20SOAP/WSImport/Test/Form/form.wsdl#types?schema2
    [WARNING] s4s-elt-invalid-content.1: The content of 'Data' is invalid.  Element 'attribute' is invalid, misplaced, or occurs too often.
      line 215 of file:/C:/Documents%20and%20Settings/Hopi_1/Mes%20documents/Alexandre/Recherche%20SOAP/WSImport/Test/Form/form.wsdl#types?schema2
    [WARNING] src-resolve.4.2: Error resolving component 'generic:result'. It was detected that 'generic:result' is in namespace 'generic', but components
    from this namespace are not referenceable from schema document 'file:/C:/Documents%20and%20Settings/Hopi_1/Mes%20documents/Alexandre/Recherche%20SOAP
    /WSImport/Test/Form/form.wsdl#types?schema2'. If this is the incorrect namespace, perhaps the prefix of 'generic:result' needs to be changed. If this
    is the correct namespace, then an appropriate 'import' tag should be added to 'file:/C:/Documents%20and%20Settings/Hopi_1/Mes%20documents/Alexandre/Re
    cherche%20SOAP/WSImport/Test/Form/form.wsdl#types?schema2'.
      line 230 of file:/C:/Documents%20and%20Settings/Hopi_1/Mes%20documents/Alexandre/Recherche%20SOAP/WSImport/Test/Form/form.wsdl#types?schema2
    [WARNING] src-resolve: Cannot resolve the name 'xop:Include' to a(n) 'element declaration' component.
      line 213 of file:/C:/Documents%20and%20Settings/Hopi_1/Mes%20documents/Alexandre/Recherche%20SOAP/WSImport/Test/Form/form.wsdl#types?schema2
    [WARNING] Ignoring SOAP port "form": it uses non-standard SOAP 1.2 binding.
    You must specify the "-extension" option to use this binding.
      line 533 of file:/C:/Documents%20and%20Settings/Hopi_1/Mes%20documents/Alexandre/Recherche%20SOAP/WSImport/Test/Form/form.wsdl
    [WARNING] Service "form" does not contain any usable ports. try running wsimport with -extension switch.
      line 531 of file:/C:/Documents%20and%20Settings/Hopi_1/Mes%20documents/Alexandre/Recherche%20SOAP/WSImport/Test/Form/form.wsdl
    generating code...
    compiling code...Could you tell me how to correctly generate my classes in this case ?
    Thank you.
    Edited by: morphet on May 30, 2008 6:12 AM

    Alchemista,
    Not sure if you were able to solve your problem..but I was trying to do exactly what you were trying to do.. access a datasource from a simple Java client. However, you cannot do so by simply writing the Java class and running it. The simple Java client has to be deployed as a J2EE Application Client. The following tutorial shows how to create a J2EE Application Client using the non-J2EE Java class you have written.
    http://developer.java.sun.com/developer/technicalArticles/J2EE/appclient
    The article talks about accessing EJBs from a J2EE App. Client.. but since you only want to access the DataSource, just skip all the screens until it asks you to register the JNDI DataSource resources...
    Let me know if you have any questions. You can email me at [email protected]
    I hope this helps.

  • How can I call a java class from within my program?

    I was wondering if there's a platform independent way to call a java class from my program.

    Here's my scenario. I'm working on a platform independent, feature rich, object-oriented command prompt program. The way I'm designing it is that users can drop classes they write into my bin directory and gain access to the class through my program. For example, they drop a class named Network.class in the bin directory. They would type Network network at my command prompt and gain access to all the methods available in that class. They can then type system.echo network.ipaddress() at my prompt and get the system's ip address. I have it designed that there's a server running in the background and the clients connect to my port. Once connected the end-user can enter their user name and password and gain access to the system. When they type a command they actually call another java program which connects to my server using a seperate thread. They can then communicate back and forth. I have it set that everything has a process id and it's used to keep track of who called what program. Once the program is done it disconnects and closes. Rather than getting into the nitty gritty (I didn't want to get into heavy detail, I know how everything will work) I'm really interested in finding out how I can call a java program from my program. I don't want it to be part of the app in any way.

  • Calling a method of one class from another withing the same package

    hi,
    i've some problem in calling a method of one class from another class within the same package.
    for eg. if in Package mypack. i'm having 2 files, f1 and f2. i would like to call a method of f2 from f1(f1 is a servlet) . i donno exactly how to instantiate the object for f2. can anybody please help me in this regard.
    Thank u in advance.
    Regards,
    Fazli

    This is what my exact problem.
    i've created a bean (DataBean) to access the database. i'm having a servlet program (ShopBook). now to check some details over there in the database from the servlet i'm in need to use a method in the DataBean.
    both ShopBook.java and DataBean.java lies in the package shoppack.
    in ShopBook i tried to instantiate the object to DataBean as
    DataBean db = new DataBean();
    it shows the compiler error, unable to resolve symbol DataBean.
    note:
    first i compiled DataBean.java, it got compiled perfectly and the class file resides inside the shoppack.
    when i'm trying to compile the ShopBook its telling this error.
    hope i'm clear in explaining my problem. can u please help me?
    thank u in advance.
    regards,
    Fazli

  • ClassNotFound in case of class from jar in lib folder

    Hello,
    I get an application that I have to deploy on Weblogic AS. It is big ear with couple of wars inside. Let's say it is bigApp.ear.
    It is deployed and state is Active. When go to browser and try to run an application I get an error. In logs I found ClassNotFoundException. The error is related to a class, let's say: com.some.package.Abc - I have this class in a jar file, let's say someFile.jar and it is in a folder WLS_FOLDER\samples\domains\wl_server\lib where:
    - WLS_FOLDER is my WLS installation folder
    - wl_server - name of my domain where I deploy an application.
    I wrote a small application (simple form), let's say simpleApp.war. The application uses the class com.some.package.Abc, but the class is not put into the war (WEB-INF/lib) of my small aplication (I use Maven and dependency to someFile.jar has scope provided, so simpleApp.war does not contain it). The result is that simpleApp works fine and there is no error in logs. It creates an instance of com.some.package.Abc and correctly display toString() of the instance of the class in a browser. So this means that application simpleApp is able to see and use classes that are inside jars in WLS_FOLDER\samples\domains\wl_server\lib folder.
    So my guess is that there is something in bigApp.ear but I don't know where to search. I read about class loaders hierarchy in Weblogic and Class Loader Filtering. But I have looked inside every weblogic.xml in bigApp.ear and wars that are inside and there is no filter on "com.some.package" or "com.some" or "com" only different packages.
    Is there any other mechanism in Weblogic that could block the visibility of classes from jars from lib folder of domain to the applications that are deployed in that domain??
    Regards

    Hi,
    Place that something.jar file under Domain_Home / lib folder and restart the server it will included with in the classpath and your app will able to pick the class without any issue.
    Regards,
    Kal

  • How to run a java class from a shell script with passing arguments

    hi,
    I have a jar with all the required classes. I was using ant to run the classes i needed.
    But now i want to use a shell script to run the class, also the class accepts some arguments so when script is run it should accept arguments.
    So can any one tell me how to set class paths, jar location and call the required class from shell script or batch file with passing arguments to it.
    Thanks in advance.

    Let's say that the order of arguments is as below
    1. Jar file name
    2. Classpath
    Your shell script would look like this
    java -cp $CLASSPATH:$2 -jar $1 I am assuming that your jar file has the required main-class entry in its manifest. Note that $1...$9 represent the arguments to this shell script.
    The same goes for a batch file
    java -cp %CLASSPATH%;%2 -jar %1

  • Compiling java classes from JDeveloper

    Hi guys... perhaps this thred need to be created in JDeveloper fourm, it so please let me know.
    I generated the classes from a web service which complie without errors and exedcute correctly. When trying to compile the main stub in Oracle database, I get an error "CONNOT RESOLVE SYMBOL" reviewing the java class, I see that extends the wrapper generated by Jdev. So I try to complie the extendable class, after trying to generate and compile it in the database, I get the error: "class$ is reserved for internal use" The code has the next line:
    static java.lang.Class class$(java.lang.String param1)
    Is this error launched from the oracle database? My guess is that maybe Im missing some library or something and thats why I can create the such Java Name procedures. But I will like if anyone could guide me through this exception.
    Thanks
    JP

    Do you have .jar (or the .class) files created after the compile from JDeveloper?
    If you do, you can load all of them using the command line utility loadjava:
    $ loadjava
    loadjava: Usage: loadjava [-definer] [-encoding encoding] [-force] [-genmissing] [-genmissingjar jar] [-grant grants] [-help] [-nousage] [-noverify] [-oci8] [-order] [-resolve] [-resolver resolver] [-schema schema] [-synonym] [-thin] [-tableschema schema] [-user user/password@database] [-verbose] classes..jars..resources..properties...
    $

Maybe you are looking for