У меня есть сценарий, в котором я создаю экземпляр класса и вызываю метод, подобный приведенному ниже, с использованием механизма отражения java.
WorkerObjectType workerObjectType = new WorkerObjectType();
WorkerObjectIDType workerObjectIdType = new WorkerObjectIDType();
workerObjectIdType.setType("Employee_ID");
workerObjectIdType.setValue("102");
workerObjectType.getID().add(workerObjectIdType);
workerReqReferenceType.getWorkerReference().add(workerObjectType);
Для приведенного выше случая я попытался использовать отражение java, как показано ниже:
Class<?> workerObjectTypeRef = Class.forName("platinum.humanresource.WorkerObjectType");
Object workerObjectType = workerObjectTypeRef.newInstance();
Class<?> workerObjectIDTypeRef = Class.forName("platinum.humanresource.WorkerObjectIDType");
Object workerObjectIdType = workerObjectIDTypeRef.newInstance();
Method setType = workerObjectIDTypeRef.getDeclaredMethod("setType", String.class);
setType.invoke(workerObjectIdType, "Employee_ID");
Method setValue = workerObjectIDTypeRef.getDeclaredMethod("setValue", String.class);
setValue.invoke(workerObjectIdType, "102");
Я не могу сделать это, особенно в следующем сценарии:
workerObjectType.getID().add(workerObjectIdType);
workerReqReferenceType.getWorkerReference().add(workerObjectType);