После 70 минут работы страницы основного итератора, на мой взгляд, Binding обновляет и выдает следующее исключение 'java.lang.IllegalArgumentException: Object: null не является известным типом сущности.'
у меня уже естьпопытался изменить свойство обновления итератора на никогда, и оно все еще обновляется.
вот мой Entity
@Entity
@NamedQueries({ @NamedQuery(name = "Employees.findById", query = "select o from Employees o where o.employeeId = :employeeId")})
public class Employees implements Serializable {
@Id
@Column(name = "EMPLOYEE_ID", nullable = false)
private Integer employeeId;
private Integer salary;
public Employees() {
}
public Integer getEmployeeId() {
return employeeId;
}
public void setEmployeeId(Integer employeeId) {
this.employeeId = employeeId;
}
public Integer getSalary() {
return salary;
}
public void setSalary(Integer salary) {
this.salary = salary;
}
}
, а вот мой сессионный компонент
@Stateless(name = "HrFacade", mappedName = "Hr_EJB_JPA-Model-HrFacade")
public class HrFacadeBean implements HrFacade, HrFacadeLocal {
@Resource
SessionContext sessionContext;
@PersistenceContext(unitName = "Model")
private EntityManager em;
public HrFacadeBean() {
}
public Employees mergeEmployees(Employees employees) {
return em.merge(employees);
}
public Employees getEmployeeByDepEmpId(Integer employeeId){
if(employeeId != null){
return em.createNamedQuery("Employees.findById",Employees.class)
.setParameter("employeeId", employeeId)
.getResultList().get(0);
}
return new Employees();
}
и вотмоя привязка
<?xml version="1.0" encoding="UTF-8" ?>
<pageDefinition xmlns="http://xmlns.oracle.com/adfm/uimodel" version="12.2.1.16.48" id="view1PageDef"
Package="oracle.view.pageDefs">
<parameters/>
<executables>
<variableIterator id="variables"/>
<iterator Binds="root" RangeSize="25" DataControl="HrFacadeBean" id="HrFacadeBeanIterator"/>
<accessorIterator MasterBinding="HrFacadeBeanIterator" Binds="employeeByDepEmpId" RangeSize="25"
DataControl="HrFacadeBean" BeanClass="oracle.model.Employees" id="employeeByDepEmpIdIterator"/>
</executables>
<bindings>
<attributeValues IterBinding="employeeByDepEmpIdIterator" id="employeeId">
<AttrNames>
<Item Value="employeeId"/>
</AttrNames>
</attributeValues>
<attributeValues IterBinding="employeeByDepEmpIdIterator" id="salary">
<AttrNames>
<Item Value="salary"/>
</AttrNames>
</attributeValues>
<methodAction id="employeesMerge" RequiresUpdateModel="true" Action="invokeMethod" MethodName="mergeEmployees"
IsViewObjectMethod="false" DataControl="HrFacadeBean"
InstanceName="data.HrFacadeBean.dataProvider"
ReturnName="data.HrFacadeBean.methodResults.employeesMerge_mergeEmployees_dataControl_dataProvider_mergeEmployees_result">
<NamedData NDName="employees" NDValue="#{bindings.employeeByDepEmpIdIterator.currentRow.dataProvider}"
NDType="oracle.model.Employees"/>
</methodAction>
</bindings>
</pageDefinition>
и вот моя привязка страницы
<?xml version="1.0" encoding="UTF-8" ?>
<pageDefinition xmlns="http://xmlns.oracle.com/adfm/uimodel" version="12.2.1.16.48" id="untitled2PageDef"
Package="oracle.view.pageDefs">
<parameters/>
<executables>
<variableIterator id="variables"/>
<taskFlow id="taskflow11" taskFlowId="/WEB-INF/task-flow-1.xml#task-flow-1" activation="conditional"
xmlns="http://xmlns.oracle.com/adf/controller/binding"
RefreshCondition="#{pageFlowScope.employeeId ne null}" active="#{pageFlowScope.employeeId eq null}">
<parameters>
<parameter id="employeeId" value="1212"/>
</parameters>
</taskFlow>
</executables>
<bindings/>
</pageDefinition>
я могу объединить свою работу обычно до 1 часа и 10 минут, когда итератор пытается обновить, чтобы пройти через getEmployeeByDepEmpId иэто вызовет исключение, поэтому у кого-нибудь есть идея, почему итератор имеет такое поведение и как его изменить?заранее спасибо.