Hi All:
I run my web service which using the beehive control to connect
database. I got following error:
<Nov 7, 2007 10:06:14 AM CST> <Error>
<us.crimnet.audit.service.AuditServiceImpl
> <000000> <Could not save the AuditLog object in the service.
java.lang.NullPointerException
at
us.crimnet.audit.service.AuditServiceImpl.saveAuditLogEntry(AuditServ
iceImpl.java:33)
at
us.crimnet.audit.webservice.AuditLogService.saveAuditLogEntry(AuditLo
gService.java:30)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
Truncated. see log file for complete stacktrace
>
The codes are attached. Please check it. If someone know the problem,
please let me know.
Thanks,
Eric Qiu
<?xml version="1.0" encoding="UTF-8"?>
<project name="Audit Service" default="main" basedir=".">
<description>Audit Service</description>
<property name="projname" value="AuditService" />
<property file="build.properties" />
<property name="webinf" location="WebContent/WEB-INF" />
<property name="lib" location="${webinf}/lib" />
<property name="testlib" location="lib" />
<property name="src" location="src" />
<property name="test.src" location="testsrc" />
<property name="view" location="WebContent" />
<property name="build.home" location="build" />
<property name="build.iss" location="build/iss" />
<property name="build.iss.src" location="build/iss/src" />
<property name="build.iss.classes" location="build/iss/classes" />
<property name="build.source" location="build/source" />
<property name="build.source.src" location="build/source/src" />
<property name="build.source.classes" location="build/source/classes" />
<property name="build.classes" location="build/classes" />
<property name="stage" location="build/stage" />
<!-- defines macros for build-schemas, build-controls, build-pageflows -->
<import file="${beehive.home}/weblogic-beehive/ant/weblogic-beehive-tools.xml" />
<!-- defines macros for build-webapp -->
<import file="${beehive.home}/weblogic-beehive/ant/weblogic-beehive-buildmodules.xml" />
<!-- beehive-imports defines dependency paths that are required by beehive-tools.xml -->
<import file="${beehive.home}/weblogic-beehive/ant/weblogic-beehive-imports.xml" />
<path id="wl.classpath">
<pathelement location="${jdk.home}/lib/tools.jar" />
<pathelement location="${weblogic.home}/server/lib/weblogic.jar" />
<pathelement location="${weblogic.home}/server/lib/weblogic_sp.jar" />
<pathelement location="${weblogic.home}/server/lib/webservices.jar" />
<pathelement location="${weblogic.home}/server/lib/xqrl.jar" />
</path>
<path id="commons.classpath">
<fileset dir="${weblogic.home}/server/lib/consoleapp/APP-INF/lib/">
<include name="commons-codec-*.jar" />
<include name="commons-discover.jar" />
<include name="commons-logging-*.jar" />
<include name="log4j-*.jar" />
</fileset>
<fileset dir="${weblogic.home}/server/lib">
<include name="wlcommons-logging.jar" />
</fileset>
</path>
<path id="beehive.classpath">
<fileset dir="${beehive.home}/apache-beehive-svn-snapshot/lib/controls">
<include name="*.jar" />
</fileset>
<pathelement location="${beehive.home}/weblogic-beehive/lib/controls/runtime/weblogic-controls.jar" />
<pathelement location="${beehive.home}/weblogic-beehive/lib/controls/weblogic-webservice-control.jar" />
</path>
<path id="appbuild.classpath">
<pathelement location="${stage}/${projname}/WEB-INF/classes" />
<pathelement location="${webinf}/classes" />
</path>
<path id="app.classpath">
<path refid="wl.classpath" />
<path refid="commons.classpath" />
<path refid="beehive.classpath" />
<pathelement location="${src}" />
<pathelement location="${stage}/${projname}/WEB-INF/classes" />
<pathelement location="${webinf}/classes" />
<fileset dir="${webinf}/lib">
<include name="*.jar" />
</fileset>
</path>
<taskdef name="clientgen" classname="weblogic.wsee.tools.anttasks.ClientGenTask">
<classpath refid="wl.classpath" />
</taskdef>
<taskdef name="jwsc" classname="weblogic.wsee.tools.anttasks.JwscTask" onerror="report">
<classpath refid="wl.classpath" />
</taskdef>
<target name="clean">
<delete dir="build" />
<delete dir="${test.src}/us/crimnet/webservice/source/stub" />
</target>
<target name="setup">
<mkdir dir="${build.classes}" />
<mkdir dir="${build.iss.classes}" />
<mkdir dir="${build.source.classes}" />
</target>
<target name="pre-compile-iss-wsdl" depends="setup">
<echo>running clientgen</echo>
<clientgen destDir="${build.iss.src}" serviceName="IntegratedSearchService" generateAsyncMethods="false" packageName="us.crimnet.iss.core.webservice.stub" wsdl="${IntegratedSearchService.wsdl}" />
</target>
<target name="compile-iss-stub" depends="pre-compile-iss-wsdl">
<javac destdir="${build.iss.classes}" classpathref="wl.classpath" debug="true">
<src path="${build.iss.src}" />
</javac>
</target>
<target name="jar-iss" depends="compile-iss-stub">
<jar destfile="${build.iss}/iss.jar">
<fileset dir="${build.iss.classes}">
<include name="**/*" />
</fileset>
<fileset dir="${build.iss.src}">
<include name="**/*.xml" />
</fileset>
</jar>
</target>
<target name="build-service">
<mkdir dir="${build.home}/stage" />
<copy todir="${stage}/${projname}">
<fileset dir="${view}">
<include name="**/*" />
</fileset>
</copy>
<build-controls
srcdir="${src}"
destDir="${stage}/${projname}/WEB-INF/classes"
tempDir="${stage}/assembly"
classpathref="app.classpath" />
<jwsc srcdir="${src}" destdir="${stage}" debug="on" keepGenerated="true">
<classpath refid="app.classpath" />
<module name="${projname}" explode="true">
<jws file="us/crimnet/audit/webservice/AuditLogService.java" />
</module>
</jwsc>
<generate-manifests destdir="${stage}/${projname}"
searchclasspathref="appbuild.classpath"
classpathref="app.classpath"
tempdir="${stage}/.staging"/>
<copy todir="${stage}/${projname}/WEB-INF/classes/META-INF">
<fileset dir="${stage}/${projname}/META-INF">
<include name="annotation-manifest.xml" />
</fileset>
</copy>
<war destfile="${stage}/${projname}.war" webxml="${stage}/${projname}/WEB-INF/web.xml">
<fileset dir="${stage}/${projname}" />
</war>
</target>
<target name="weblogic" depends="build-service">
<ear destfile="${stage}/${projname}.ear" appxml="EarContent/META-INF/application.xml">
<metainf dir="EarContent/META-INF" includes="weblogic-application.xml" />
<fileset dir="${stage}" includes="*.war" />
</ear>
</target>
<taskdef name="wldeploy" classname="weblogic.ant.taskdefs.management.WLDeploy">
<classpath refid="wl.classpath" />
</taskdef>
<target name="wl.deploy">
<wldeploy action="deploy" verbose="${wl.verbose}" debug="${wl.debug}" name="${projname}" source="${stage}/${projname}.ear" user="${wl.username}" password="${wl.password}" upload="${wl.upload}" adminurl="${wl.adminurl}" targets="${wl.targets}" />
</target>
<target name="wl.redeploy" depends="weblogic">
<wldeploy action="redeploy" verbose="${wl.verbose}" debug="${wl.debug}" name="${projname}" source="${stage}/${projname}.ear" user="${wl.username}" password="${wl.password}" upload="${wl.upload}" adminurl="${wl.adminurl}" targets="${wl.targets}" />
</target>
<target name="wl.undeploy">
<wldeploy action="undeploy" verbose="${wl.verbose}" debug="${wl.debug}" name="${projname}" user="${wl.username}" password="${wl.password}" upload="${wl.upload}" adminurl="${wl.adminurl}" targets="${wl.targets}" />
</target>
<!--
<taskdef name="testng" classpathref="test.classpath" classname="org.testng.TestNGAntTask" />
<target name="pre-compile-source-wsdl" depends="setup">
<echo>running clientgen</echo>
<mkdir dir="${build.source.src}"/>
<clientgen destDir="${build.source.src}" serviceName="SourceSystemService" generateAsyncMethods="false" packageName="us.crimnet.iss.source.webservice.stub" wsdl="${SourceSystemService.wsdl}" />
</target>
<target name="compile-source-stub" depends="pre-compile-source-wsdl">
<javac destdir="${build.source.classes}" classpathref="wl.classpath" debug="true">
<src path="${build.source.src}" />
</javac>
</target>
<target name="jar-source" depends="compile-source-stub">
<jar destfile="${build.source}/source.jar">
<fileset dir="${build.source.classes}">
<include name="**/*" />
</fileset>
<fileset dir="${build.source.src}">
<include name="**/*.xml" />
</fileset>
</jar>
</target>
<path id="test.classpath">
<fileset dir="${testlib}" includes="*.jar" />
<pathelement location="${build.classes}" />
<path refid="wl.classpath" />
</path>
-->
<!-- depends="jar-source, build-service" -->
<!--
<target name="tests.compile">
<javac destdir="${build.classes}" classpathref="test.classpath" debug="true">
<src path="${test.src}" />
</javac>
</target>
<target name="test" depends="tests.compile">
<delete dir="test-output" />
<testng classpathref="test.classpath" outputdir="test-output">
<xmlfileset dir="${test.src}" includes="**/testng.xml" />
</testng>
</target>
-->
<target name="test_control">
<property name="test-control.src" location="src-test"/>
<property name="test.classes" location="${build.home}/test-classes"/>
<property name="test.beansrc" location="${build.home}/test-beansrc"/>
<property name="test.case" location="${test.classes}/us/crimnet/audit/controls/tests"/>
<mkdir dir="${test.classes}"/>
<mkdir dir="${test.beansrc}"/>
<path id="test.classpath">
<path refid="app.classpath"/>
<pathelement location="${stage}/${projname}/WEB-INF/classes"/>
<!-- <pathelement location="${stage}/${projname}.ear"/> -->
<pathelement location="lib/junit.jar"/>
</path>
<build-controls srcdir="${test-control.src}"
destdir="${test.classes}"
tempdir="${test.beansrc}"
classpathref="test.classpath"/>
<path id="test-run.classpath">
<path refid="test.classpath"/>
<pathelement location="${test.classes}"/>
<pathelement location="${beehive.home}/apache-beehive-svn-snapshot/lib/common/commons-discovery-0.2.jar"/>
<pathelement location="${beehive.home}/apache-beehive-svn-snapshot/lib/common/commons-logging-1.0.4.jar"/>
</path>
<java classname="junit.textui.TestRunner"
classpathref="test-run.classpath">
<arg line="us.crimnet.audit.controls.tests.AuditLogControlTestCase"/>
</java>
</target>
<target name="main" depends="wl.deploy" />
</project>