when i run client application via webstart,i found the data can not got from server.The configuration files and some codes as follows:

clientContext.xml:
Code:
<bean id="depotSubFrameManager" 
class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean"><property name="serviceUrl"><value>http&#58;//$&#123;serverName&#125;&#58;$&#123;httpPort$&#123;contextPath&#125;/remoting/DepotSubFrameManager</value></property>
<property name="serviceInterface">
<value>com.jctx.trms.hibernate.bussiness.DepotSubFrameManager</value></property>
</bean>
remoting-servlet.xml:
Code:
<bean name="/DepotSubFrameManager"
class="org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter">
<property name="service">
<ref bean="depotSubFrameManager"/>
</property>
<property name="serviceInterface">
<value>com.jctx.trms.hibernate.bussiness.DepotSubFrameManager</value></property>
</bean>
applicationContext.xml:
Code:
<bean id="depotSubFrameDAO" class="com.jctx.trms.hibernate.DAO.DepotSubFrameDAOImpl">
        <property name="sessionFactory">
            <ref local="sessionFactory"/>
        </property>
    </bean>
    <bean id="depotSubFrameManager" parent="txProxyTemplate">
        <property name="target">
            <bean class="com.jctx.trms.hibernate.bussiness.DepotSubFrameManagerImpl">
                <property name="depotSubFrameDAO"><ref bean="depotSubFrameDAO"/></property>         
            </bean>
        </property>
    </bean>
get the bean:
Code:
public static DepotSubFrameManager getDepotSubFrameManager&#40;&#41; &#123;
return &#40;DepotSubFrameManager&#41; &#40;getContext&#40;&#41;.getBean&#40;"depotSubFrameManager"&#41;&#41;;
&#125;
call the service:
Code:
DepotSubFrameManager depotsubframem = &#40;DepotSubFrameManager&#41; GlobalApplicationContext.getDepotSubFrameManager&#40;&#41;;
System.out.println&#40;"the value of depotsubframem is " + depotsubframem&#41;;
List lts = depotsubframem.findAll&#40;&#41;; &#91;color=red&#93;//&#40;1&#41;&#91;/color&#93;
    Iterator its = lts.iterator&#40;&#41;;
my dao is:
Code:
public List findAll&#40;&#41;&#123;
        List list = getHibernateTemplate&#40;&#41;.find&#40;"from com.jctx.trms.hibernate.persistence.DepotSubFrame"&#41;;
System.out.println&#40;"the length of size is " + list.size&#40;&#41;&#41;;    &#91;color=red&#93;  //&#40;2&#41;&#91;/color&#93;             return list;
    &#125;
in server,the console print the size of list is 6,but in client,the program run to the row which marked (1) throw the java.lang.NullPointerException,and in the console of client ,the value of depotsubframem is

Code:
HTTP invoker proxy for service URL &#91;http&#58;//localhost&#58;8080/trms/remoting/DepotSubFrameManager&#93;
the exception of client console is:

Code:
java.lang.NullPointerException
	at com.jctx.trms.hibernate.persistence.BaseObject.hashCodeReflectionAppend&#40;BaseObject.java&#58;115&#41;
	at com.jctx.trms.hibernate.persistence.BaseObject.hashCode&#40;BaseObject.java&#58;98&#41;
	at org.apache.commons.lang.builder.HashCodeBuilder.append&#40;HashCodeBuilder.java&#58;392&#41;
	at com.jctx.trms.hibernate.persistence.BaseObject.hashCodeReflectionAppend&#40;BaseObject.java&#58;118&#41;
	at com.jctx.trms.hibernate.persistence.BaseObject.hashCode&#40;BaseObject.java&#58;98&#41;
	at java.util.HashMap.hash&#40;HashMap.java&#58;261&#41;
	at java.util.HashMap.putForCreate&#40;HashMap.java&#58;404&#41;
	at java.util.HashMap.readObject&#40;HashMap.java&#58;1007&#41;
	at sun.reflect.NativeMethodAccessorImpl.invoke0&#40;Native Method&#41;
	at sun.reflect.NativeMethodAccessorImpl.invoke&#40;NativeMethodAccessorImpl.java&#58;39&#41;
	at sun.reflect.DelegatingMethodAccessorImpl.invoke&#40;DelegatingMethodAccessorImpl.java&#58;25&#41;
	at java.lang.reflect.Method.invoke&#40;Method.java&#58;324&#41;
	at java.io.ObjectStreamClass.invokeReadObject&#40;ObjectStreamClass.java&#58;838&#41;
	at java.io.ObjectInputStream.readSerialData&#40;ObjectInputStream.java&#58;1746&#41;
	at java.io.ObjectInputStream.readOrdinaryObject&#40;ObjectInputStream.java&#58;1646&#41;
	at java.io.ObjectInputStream.readObject0&#40;ObjectInputStream.java&#58;1274&#41;
	at java.io.ObjectInputStream.defaultReadFields&#40;ObjectInputStream.java&#58;1845&#41;
	at java.io.ObjectInputStream.readSerialData&#40;ObjectInputStream.java&#58;1769&#41;
	at java.io.ObjectInputStream.readOrdinaryObject&#40;ObjectInputStream.java&#58;1646&#41;
	at java.io.ObjectInputStream.readObject0&#40;ObjectInputStream.java&#58;1274&#41;
	at java.io.ObjectInputStream.defaultReadFields&#40;ObjectInputStream.java&#58;1845&#41;
	at java.io.ObjectInputStream.readSerialData&#40;ObjectInputStream.java&#58;1769&#41;
	at java.io.ObjectInputStream.readOrdinaryObject&#40;ObjectInputStream.java&#58;1646&#41;
	at java.io.ObjectInputStream.readObject0&#40;ObjectInputStream.java&#58;1274&#41;
	at java.io.ObjectInputStream.defaultReadFields&#40;ObjectInputStream.java&#58;1845&#41;
	at java.io.ObjectInputStream.readSerialData&#40;ObjectInputStream.java&#58;1769&#41;
	at java.io.ObjectInputStream.readOrdinaryObject&#40;ObjectInputStream.java&#58;1646&#41;
	at java.io.ObjectInputStream.readObject0&#40;ObjectInputStream.java&#58;1274&#41;
	at java.io.ObjectInputStream.defaultReadFields&#40;ObjectInputStream.java&#58;1845&#41;
	at java.io.ObjectInputStream.readSerialData&#40;ObjectInputStream.java&#58;1769&#41;
	at java.io.ObjectInputStream.readOrdinaryObject&#40;ObjectInputStream.java&#58;1646&#41;
	at java.io.ObjectInputStream.readObject0&#40;ObjectInputStream.java&#58;1274&#41;
	at java.io.ObjectInputStream.readObject&#40;ObjectInputStream.java&#58;324&#41;
	at java.util.ArrayList.readObject&#40;ArrayList.java&#58;547&#41;
	at sun.reflect.NativeMethodAccessorImpl.invoke0&#40;Native Method&#41;
	at sun.reflect.NativeMethodAccessorImpl.invoke&#40;NativeMethodAccessorImpl.java&#58;39&#41;
	at sun.reflect.DelegatingMethodAccessorImpl.invoke&#40;DelegatingMethodAccessorImpl.java&#58;25&#41;
	at java.lang.reflect.Method.invoke&#40;Method.java&#58;324&#41;
	at java.io.ObjectStreamClass.invokeReadObject&#40;ObjectStreamClass.java&#58;838&#41;
	at java.io.ObjectInputStream.readSerialData&#40;ObjectInputStream.java&#58;1746&#41;
	at java.io.ObjectInputStream.readOrdinaryObject&#40;ObjectInputStream.java&#58;1646&#41;
	at java.io.ObjectInputStream.readObject0&#40;ObjectInputStream.java&#58;1274&#41;
	at java.io.ObjectInputStream.defaultReadFields&#40;ObjectInputStream.java&#58;1845&#41;
	at java.io.ObjectInputStream.readSerialData&#40;ObjectInputStream.java&#58;1769&#41;
	at java.io.ObjectInputStream.readOrdinaryObject&#40;ObjectInputStream.java&#58;1646&#41;
	at java.io.ObjectInputStream.readObject0&#40;ObjectInputStream.java&#58;1274&#41;
	at java.io.ObjectInputStream.readObject&#40;ObjectInputStream.java&#58;324&#41;
	at org.springframework.remoting.httpinvoker.AbstractHttpInvokerRequestExecutor.doReadRemoteInvocationResult&#40;AbstractHttpInvokerRequestExecutor.java&#58;233&#41;
	at org.springframework.remoting.httpinvoker.AbstractHttpInvokerRequestExecutor.readRemoteInvocationResult&#40;AbstractHttpInvokerRequestExecutor.java&#58;181&#41;
	at org.springframework.remoting.httpinvoker.SimpleHttpInvokerRequestExecutor.doExecuteRequest&#40;SimpleHttpInvokerRequestExecutor.java&#58;55&#41;
	at org.springframework.remoting.httpinvoker.AbstractHttpInvokerRequestExecutor.executeRequest&#40;AbstractHttpInvokerRequestExecutor.java&#58;68&#41;
	at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.executeRequest&#40;HttpInvokerClientInterceptor.java&#58;138&#41;
	at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.invoke&#40;HttpInvokerClientInterceptor.java&#58;112&#41;
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed&#40;ReflectiveMethodInvocation.java&#58;144&#41;
	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke&#40;JdkDynamicAopProxy.java&#58;174&#41;
	at $Proxy39.findAll&#40;Unknown Source&#41;
	at com.jctx.trms.hibernate.bussiness.IniTree.getTreeList&#40;IniTree.java&#58;70&#41;
	at com.jctx.trms.tree.TreeBean.<init>&#40;TreeBean.java&#58;19&#41;
	at com.jctx.trms.tree.TreeBean.getInstance&#40;TreeBean.java&#58;29&#41;
	at com.jctx.trms.tree.MainTree$JCTreeContentProvider.getElements&#40;MainTree.java&#58;241&#41;
	at org.eclipse.jface.viewers.StructuredViewer.getRawChildren&#40;StructuredViewer.java&#58;532&#41;
	at org.eclipse.jface.viewers.AbstractTreeViewer.getRawChildren&#40;AbstractTreeViewer.java&#58;704&#41;
	at org.eclipse.jface.viewers.StructuredViewer.getFilteredChildren&#40;StructuredViewer.java&#58;477&#41;
	at org.eclipse.jface.viewers.StructuredViewer.getSortedChildren&#40;StructuredViewer.java&#58;585&#41;
	at org.eclipse.jface.viewers.AbstractTreeViewer$1.run&#40;AbstractTreeViewer.java&#58;359&#41;
	at org.eclipse.swt.custom.BusyIndicator.showWhile&#40;BusyIndicator.java&#58;69&#41;
	at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren&#40;AbstractTreeViewer.java&#58;342&#41;
	at org.eclipse.jface.viewers.AbstractTreeViewer$5.run&#40;AbstractTreeViewer.java&#58;787&#41;
	at org.eclipse.jface.viewers.StructuredViewer.preservingSelection&#40;StructuredViewer.java&#58;862&#41;
	at org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged&#40;AbstractTreeViewer.java&#58;777&#41;
	at org.eclipse.jface.viewers.ContentViewer.setInput&#40;ContentViewer.java&#58;238&#41;
	at org.eclipse.jface.viewers.StructuredViewer.setInput&#40;StructuredViewer.java&#58;1059&#41;
	at com.jctx.trms.tree.MainTree.createTreeViewer&#40;MainTree.java&#58;100&#41;
	at com.jctx.trms.views.SearchView.createPartControl&#40;SearchView.java&#58;15&#41;
	at org.eclipse.ui.internal.PartPane$2.run&#40;PartPane.java&#58;137&#41;
	at org.eclipse.core.internal.runtime.InternalPlatform.run&#40;InternalPlatform.java&#58;616&#41;
	at org.eclipse.core.runtime.Platform.run&#40;Platform.java&#58;747&#41;
	at org.eclipse.ui.internal.PartPane.createChildControl&#40;PartPane.java&#58;133&#41;
	at org.eclipse.ui.internal.ViewPane.createChildControl&#40;ViewPane.java&#58;135&#41;
	at org.eclipse.ui.internal.ViewFactory$1.run&#40;ViewFactory.java&#58;351&#41;
	at org.eclipse.core.internal.runtime.InternalPlatform.run&#40;InternalPlatform.java&#58;616&#41;
	at org.eclipse.core.runtime.Platform.run&#40;Platform.java&#58;747&#41;
	at org.eclipse.ui.internal.ViewFactory.busyRestoreView&#40;ViewFactory.java&#58;273&#41;
	at org.eclipse.ui.internal.ViewFactory$2.run&#40;ViewFactory.java&#58;530&#41;
	at org.eclipse.swt.custom.BusyIndicator.showWhile&#40;BusyIndicator.java&#58;69&#41;
	at org.eclipse.ui.internal.ViewFactory.restoreView&#40;ViewFactory.java&#58;528&#41;
	at org.eclipse.ui.internal.ViewFactory$ViewReference.getPart&#40;ViewFactory.java&#58;102&#41;
	at org.eclipse.ui.internal.WorkbenchPage$1.propertyChange&#40;WorkbenchPage.java&#58;132&#41;
	at org.eclipse.ui.internal.LayoutPart.setVisible&#40;LayoutPart.java&#58;268&#41;
	at org.eclipse.ui.internal.PartPane.setVisible&#40;PartPane.java&#58;317&#41;
	at org.eclipse.ui.internal.ViewPane.setVisible&#40;ViewPane.java&#58;568&#41;
	at org.eclipse.ui.internal.presentations.PresentablePart.setVisible&#40;PresentablePart.java&#58;122&#41;
	at org.eclipse.ui.internal.presentations.DefaultPartPresentation.selectPart&#40;DefaultPartPresentation.java&#58;1116&#41;
	at org.eclipse.ui.internal.PartStack.refreshPresentationSelection&#40;PartStack.java&#58;946&#41;
	at org.eclipse.ui.internal.PartStack.setSelection&#40;PartStack.java&#58;921&#41;
	at org.eclipse.ui.internal.PartStack.showPart&#40;PartStack.java&#58;1020&#41;
	at org.eclipse.ui.internal.PartStack.createControl&#40;PartStack.java&#58;383&#41;
	at org.eclipse.ui.internal.PartStack.createControl&#40;PartStack.java&#58;367&#41;
	at org.eclipse.ui.internal.PartSashContainer.createControl&#40;PartSashContainer.java&#58;432&#41;
	at org.eclipse.ui.internal.PerspectiveHelper.activate&#40;PerspectiveHelper.java&#58;155&#41;
	at org.eclipse.ui.internal.Perspective.onActivate&#40;Perspective.java&#58;732&#41;
	at org.eclipse.ui.internal.WorkbenchPage.onActivate&#40;WorkbenchPage.java&#58;2063&#41;
	at org.eclipse.ui.internal.WorkbenchWindow$4.run&#40;WorkbenchWindow.java&#58;1858&#41;
	at org.eclipse.swt.custom.BusyIndicator.showWhile&#40;BusyIndicator.java&#58;69&#41;
	at org.eclipse.ui.internal.WorkbenchWindow.setActivePage&#40;WorkbenchWindow.java&#58;1845&#41;
	at org.eclipse.ui.internal.WorkbenchWindow.busyOpenPage&#40;WorkbenchWindow.java&#58;498&#41;
	at org.eclipse.ui.internal.WorkbenchWindow$3.run&#40;WorkbenchWindow.java&#58;1076&#41;
	at org.eclipse.swt.custom.BusyIndicator.showWhile&#40;BusyIndicator.java&#58;69&#41;
	at org.eclipse.ui.internal.WorkbenchWindow.openPage&#40;WorkbenchWindow.java&#58;1073&#41;
	at org.eclipse.ui.internal.Workbench.openFirstTimeWindow&#40;Workbench.java&#58;992&#41;
	at org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow&#40;WorkbenchConfigurer.java&#58;174&#41;
	at org.eclipse.ui.application.WorkbenchAdvisor.openWindows&#40;WorkbenchAdvisor.java&#58;658&#41;
	at org.eclipse.ui.internal.Workbench.init&#40;Workbench.java&#58;819&#41;
	at org.eclipse.ui.internal.Workbench.runUI&#40;Workbench.java&#58;1325&#41;
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench&#40;Workbench.java&#58;254&#41;
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench&#40;PlatformUI.java&#58;141&#41;
	at com.jctx.trms.TrmsApplication.run&#40;TrmsApplication.java&#58;14&#41;
	at org.eclipse.core.internal.runtime.PlatformActivator$1.run&#40;PlatformActivator.java&#58;335&#41;
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run&#40;EclipseStarter.java&#58;273&#41;
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run&#40;EclipseStarter.java&#58;129&#41;
	at sun.reflect.NativeMethodAccessorImpl.invoke0&#40;Native Method&#41;
	at sun.reflect.NativeMethodAccessorImpl.invoke&#40;NativeMethodAccessorImpl.java&#58;39&#41;
	at sun.reflect.DelegatingMethodAccessorImpl.invoke&#40;DelegatingMethodAccessorImpl.java&#58;25&#41;
	at java.lang.reflect.Method.invoke&#40;Method.java&#58;324&#41;
	at org.eclipse.core.launcher.Main.basicRun&#40;Main.java&#58;185&#41;
	at org.eclipse.core.launcher.Main.run&#40;Main.java&#58;704&#41;
	at org.eclipse.core.launcher.Main.main&#40;Main.java&#58;688&#41;
Can anyone please spot what I have done wrong, thanks very much.

Jesse