thanks jo 4 ur help ,
Error: 500
Location: /PROFESSIONAL/start
Internal Servlet Error:
java.lang.NullPointerException
at Professional.Sync.getHeaderFieldNames(Sync.java:104)
at Professional.Sync.readEntities(Sync.java:256)
at Professional.bean.DataHandler.instance(DataHandler.java:49)
at Professional.Servletpage.getBeansFromContext(Servletpage.java:129)
at Professional.Servletpage.doHandleEvent(Servletpage.java:109)
at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.doGetNotThreadSafe(AbstractMEHttpServlet.java:347)
at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.doGet(AbstractMEHttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at com.sap.ip.me.api.runtime.jsp.AbstractMEHttpServlet.service(AbstractMEHttpServlet.java:313)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405)
at org.apache.tomcat.core.Handler.service(Handler.java:287)
at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:806)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:752)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213)
at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)
at java.lang.Thread.run(Thread.java:534)
code/////////////////////////////////////
public String[] getHeaderFieldNames(String syncBoName) {
try
{
SyncBoDescriptor sbd = descriptorFacade.getSyncBoDescriptor(syncBoName);
<b> RowDescriptor trd = sbd.getTopRowDescriptor();</b>
String[] arrayFieldNames = new String[trd.getFieldCount()];
tableHeaderNamesToDisplay = new String[trd.getFieldCount()];
int i = 0;
if (trd.getFieldCount() > 0) {
FieldDescriptorIterator fdi = trd.getAllFieldDescriptors();
while (fdi.hasNext()) {
// load array with name foer headers defined in the properties file
arrayFieldNames<i> = fdi.next().getFieldName();
tableHeaderNamesToDisplay<i> = GetProperties.getString(arrayFieldNames<i>);
i++;
}
return arrayFieldNames;
} else {
System.out.println("SmartSyncDBAccess.getHeaderFieldNames - Array of Header Field Names is empty");
return null;
}
}
catch(Exception e)
{
System.out.println(e.getMessage());
System.out.println(e.getStackTrace());
System.out.println(e.toString());
return null;
}
}
///////////////////////////////////
its pointing to this line
<b> RowDescriptor trd = sbd.getTopRowDescriptor();</b>
thnks jo