Use java.sql.Date instead. Check if the projectId is not null.
Hope it helps.

Manikandan.R, ISDC Chennai a écrit :
Hi
In our web application we are trying to update a table. our query is,   
<update id="updateProjectMasterDetails" parameterClass="com.tracker.dto.project.ProjectMasterDTO">
    UPDATE PROJECT_MASTER
        SET
            ORG_HIERARCHY_ID = #orgHierarchyId#,
            PMO_NUMBER =  #pmoNumber#,
            STAR_PRO_NUMBER =  #starProNumber#,
            DESCRIPTION =  #description#,
            IMPACT_DETAIL =  #impactDetail#,
            STATUS =  #status#,
            PRIORITY =  #priority#,
            CATEGORY =  #category#,
            ESUBMIT_MODEL = #esubmitModel#,
            QUARTER_OF_IMPLEMENTATION = #quaterOfImpl#,
            MODEL_OFFICE_1 =  #modelOffice1#,
            MODEL_OFFICE_2 =  #modelOffice2#,
            SIZE_OF_EFFORT =  #sizeOfEffort#,
            MEASUREMENT_VER_DETAIL =  #measurementVerDetail#,
            DEPARTMENT_INVL_DETAIL =  #invlOtherDepartments#,
            NINTY_DAY_ACTION_PLAN =  #nintyDayActionPlan#,
            PRIMARY_SYSTEM =  #primarySystem#,
            SECONDARY_SYSTEM =  #secondarySystem#,
            BUSINESS_OWNER =  #businessOwner#,
            PROJECT_OWNER =  #projectOwner#,
            BUSINESS_AREA_LEAD = #businessAreaLead#,
            PROJECT_LEAD =  #projectLead#,
            IT_LEAD_1 = #itLead1#,
            IT_LEAD_2 =  #itLead2#,
            IT_LEAD_3 =  #itLead3#,
            DATE_PLAN_CREATED =  #datePlanCreated:DATE#,
            COMPLETION_DATE_IMPACT =  #completionDateImpact:DATE#,
            QUARTER_OF_UPDATE =  #quarterOfUpdate#,
            PERCENTAGE_COMPLETE =  #percentageComplete#,
            PLANNED_START_DATE = #plannedStartDate:DATE#,
            PLANNED_END_DATE =  #plannedEndDate:DATE#,
            ACTUAL_START_DATE = #actualStartDate:DATE#,
            ACTUAL_END_DATE =  #actualEndDate:DATE#,
            MODIFIED_USER_ID =  #modifiedUserId#,
            MODIFIED_DATE =  SYSDATE
    WHERE
        PROJECT_ID = #projectId#       
</update>
 
some times this query is executed without any errorparticularly for the first request after the application being started. For all the subsequent requests we run in to following error. The error messages also not consistent, most of the time error messages are either of the following.
--- Check the parameter mapping for the 'actualStartDate' property.
--- Check the parameter mapping for the 'actualEndDate' property.
--- Check the parameter mapping for the 'projectId' property.
 
The data type in the DTO are
    actualStartDate - java.util.Date
    actualEndDate - java.util.Date
    projectId -  BigDecimal 
 
The date type of the corresoponding fields in tabel are (Data base is Oracle 9i)
    actualStartDate - Date
    actualEndDate - Date
    projectId -  Number
 
The stack trace is as follow,
com.ibatis.common.jdbc.exception.NestedSQLException:  
--- The error occurred in com/tracker/dao/conf/sqlMap/projectMap.xml. 
--- The error occurred while applying a parameter map. 
--- Check the updateProjectMasterDetails-InlineParameterMap. 
--- Check the parameter mapping for the 'actualEndDate' property. 
--- Cause: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
[2/15/06 23:08:24:225 GMT+05:30] 282fda15 SystemErr     
Caused by:
[2/15/06 23:08:24:225 GMT+05:30] 282fda15 SystemErr      java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
 
our working environment is webspher application server 5.0. we dont understand the cause of the problem any help could be really appreciated.
 
thanks in advance
Manikandan


-- 
Vincent NICOLAS
Teamlog, Lyon

Reply via email to