문제

다음 코드에 대한 오류가 발생합니다. 객체는 hr.attendance입니다. 어떤 사람이 나를 안내 할 수 있습니까?

public static void main(String[] args) throws MalformedURLException, XmlRpcException 
{
    // TODO code application logic here
    Session openERPSession;
    openERPSession = new Session("localhost", 8069, "Demo", "admin", "demo@2013");

try {
       // startSession logs into the server and keeps the userid of the logged in user
       openERPSession.startSession();
       ObjectAdapter partnerAd = openERPSession.getObjectAdapter("hr.attendance");
        ////// 
        ////// Example code snippet goes here
        //////

        Object[] ids = new Object[] {0,1,2,3,4,5};
        RowCollection partners = partnerAd.readObject(ids, new String[]{"action","action_desc", "day", "employee_id", "sheet_id"});

        for (Row row : partners){
             System.out.println("Row ID: " + row.getID()+"Action:" + row.get("action")+" day" + row.get("day")+" EmpName" + ((Object[])row.get("employee_id"))[1].toString()+" EmpId" + ((Object[])row.get("employee_id"))[0].toString()+"/ "+row.get("employee_id"));

        }

        Row newPartner = partnerAd.getNewRow(new String[]{"action", "day", "employee_id"});
        newPartner.put("action", "sign_out");
        newPartner.put("day", "2013-07-03");
        newPartner.put("employee_id", new Object[] {"2","Fabien Pinckaers"});
        partnerAd.createObject(newPartner);

        System.out.println("New Row ID: " + newPartner.getID());

   } catch (Exception e) {
   System.out.println("Error while reading data from server:\n\n" + e.getMessage());
  }

}
.

오류 메시지 (디버깅시 CreateObject 행에서 오류가 발생하면 오류가 발생합니다. 도움을 청하십시오. 서버에서 데이터를 읽는 중 오류 : 입력 문자열의 경우 : "[ljava.lang.object; @ dd462c"

아래에서 언급 한 것처럼 두 가지 형식으로 Employee_ID를 통과했습니다. 1. NewPartner.put ( "Employee_id", 2); 2. NewPartner.put ( "Employee_id", "2"); 그러나 나는 두 번이나 내가 다음과 같은 오류로 끝났습니다. 서버에서 데이터를 읽는 중 오류 : java.lang.String을 java.lang.Integer로 캐스팅 할 수 없습니다 처음 게시 에서처럼 물체를지나려고하는 이유는 ITerating에서 값을 읽을 때 (내 코드를 살펴보십시오)

로 던져 봐야했습니다.
((Object[])row.get("employee_id"))[0].toString() &
((Object[])row.get("employee_id"))[1].toString()
.

직원 ID와 직원 이름을 객체에서 읽습니다. 사실 나는 직원만을 기대하고 있었다. 그런 다음 삽입하기 위해 객체로 다시 캐스팅해야한다고 생각했습니다. 그러나 끝내 었습니다.

그러나 Employee_ID 객체없이 삽입하려고했을 때. 그것은 일했습니다. Employee_ID의 필드 유형을 확인하면 설정=> 데이터베이스 구조 -> "hr.attendance"에 대한 모델이 많았습니다. 필드가 많은 경우 어떻게 삽입합니까?

도움이 되었습니까?
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top