aspose file tools*
The moose likes Other Application Frameworks and the fly likes very new to spring. Need help in  this   small spring  program Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Frameworks » Other Application Frameworks
Bookmark "very new to spring. Need help in  this   small spring  program" Watch "very new to spring. Need help in  this   small spring  program" New topic
Author

very new to spring. Need help in this small spring program

hari ann
Greenhorn

Joined: Dec 09, 2007
Posts: 11
I am learning spring . i tried to run small program. but it is giving the error. please help where i did wrong


hello.java

public interface hello
{
public String sayhello(String a);
}


hello.xml

<?xml version="1.0" encoding="UTF-8"?>


<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>

<bean id="hello"

class="helloimpl">

<property name="greeting">

<value>Good Morning!...</value>

</property>

</bean>

</beans>

helloimpl.java


public class helloimpl implements hello

{
private String greeting;
public helloimpl()

{

}

public helloimpl(String a)

{

greeting=a;

}

public String sayhello(String s)

{

return greeting+s;

}

public void setGreeting(String a)

{

greeting=a;

}

}
helloclient.java


import java.io.*;
import org.springframework.beans.factory.*;
import org.springframework.beans.factory.xml.*;
import org.springframework.core.io.*;

public class helloclient

{

public static void main(String args[]) throws Exception

{

try

{

System.out.println("please Wait.");
Resource res = new ClassPathResource("hello.xml");
BeanFactory factory = new XmlBeanFactory(res);
hello bean1 = (hello)factory.getBean("hello");
String s = bean1.sayhello(args[0]);
System.out.println(s);

}

catch(Exception e1)

{ System.out.println(""+e1); }

}

}


after running helloclient.java i am getting the below error

Dec 1, 2008 7:14:48 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [hello.xml]
java.lang.ArrayIndexOutOfBoundsException: 0


please help in this.
Saradha Konimeti
Greenhorn

Joined: Dec 01, 2008
Posts: 4
Are you passing the argument while executing client?
Mark Spritzler
ranger
Sheriff

Joined: Feb 05, 2001
Posts: 17259
    
    6

If you are just learning Spring, I recommend not using the BeanFactory, but an ApplicationContext object instead.

Also, is your hello.xml in the root of your classpath?

Then the only code you would need to start up Spring is

ApplicationContext context = new ClassPathXmlApplicationContext("hello.xml");

then just use
Hello hello = context.getBean("hello");

I also recommend putting your classes into packages, instead of the root package, like you are doing.

Mark


Perfect World Programming, LLC - Two Laptop Bag - Tube Organizer
How to Ask Questions the Smart Way FAQ
 
 
subject: very new to spring. Need help in this small spring program