如何在oracle maf中更新/刷新列表视图的列表项?
我有一份任务清单。当我删除其中一个任务时,我的列表仍会在列表中显示该任务,但在服务器端,我已更新了列表,因此无法刷新列表。我正在从服务器获取新任务阵列,但无法显示它。当我再次启动我的应用程序时,它会显示更新的列表。如何在不关闭应用程序的情况下获取更新列表?这两次我都更新了阵列,但无法在视图上显示它如何在oracle maf中更新/刷新列表视图的列表项?,oracle,list,listview,jdeveloper,oracle-maf,Oracle,List,Listview,Jdeveloper,Oracle Maf,我有一份任务清单。当我删除其中一个任务时,我的列表仍会在列表中显示该任务,但在服务器端,我已更新了列表,因此无法刷新列表。我正在从服务器获取新任务阵列,但无法显示它。当我再次启动我的应用程序时,它会显示更新的列表。如何在不关闭应用程序的情况下获取更新列表?这两次我都更新了阵列,但无法在视图上显示它 public class ModelClass { private String message; private String statusCode; private Response[
public class ModelClass {
private String message;
private String statusCode;
private Response[] res = null;
protected transient PropertyChangeSupport _propertyChangeSupport = new PropertyChangeSupport(this);
public ModelClass() {
super();
clickEvent(new ActionEvent());
}
public static String taskId;
public void setTaskId(String taskId) {
System.out.print(taskId);
this.taskId = taskId;
}
public String getTaskId() {
return taskId;
}
public PropertyChangeSupport getPropertyChangeSupport() {
return _propertyChangeSupport;
}
public void setMessage(String message) {
String oldMessage = this.message;
this.message = message;
_propertyChangeSupport.firePropertyChange("message", oldMessage, message);
}
public String getMessage() {
return message;
}
public void setStatusCode(String statusCode) {
String oldStatusCode = this.statusCode;
this.statusCode = statusCode;
_propertyChangeSupport.firePropertyChange("statusCode", oldStatusCode, statusCode);
}
public String getStatusCode() {
return statusCode;
}
public void setRes(Response[] res) {
Response[] oldRes = this.res;
this.res = res;
System.out.println(res);
_propertyChangeSupport.firePropertyChange("res", oldRes, res);
System.out.println("refreshing here ");
}
public Response[] getRes() {
return res;
}
@Override
public String toString() {
return "ClassPojo [response = " + res + ", message = " + message + ", statusCode = " + statusCode + "]";
}
public void addPropertyChangeListener(PropertyChangeListener l) {
_propertyChangeSupport.addPropertyChangeListener(l);
}
public void removePropertyChangeListener(PropertyChangeListener l) {
_propertyChangeSupport.removePropertyChangeListener(l);
}
public class Response {
private String taskId;
private String taskType;
private Integer taskTime;
private String taskName;
private PropertyChangeSupport _propertyChangeSupport = new PropertyChangeSupport(this);
Response(String taskId, String taskType, String taskName) {
super();
this.taskId = taskId;
this.taskType = taskType;
this.taskName = taskName;
}
public void setTaskId(String taskId) {
String oldTaskId = this.taskId;
this.taskId = taskId;
_propertyChangeSupport.firePropertyChange("taskId", oldTaskId, taskId);
}
public String getTaskId() {
return taskId;
}
public void setTaskType(String taskType) {
String oldTaskType = this.taskType;
this.taskType = taskType;
_propertyChangeSupport.firePropertyChange("taskType", oldTaskType, taskType);
}
public String getTaskType() {
return taskType;
}
public void setTaskTime(Integer taskTime) {
Integer oldTaskTime = this.taskTime;
this.taskTime = taskTime;
_propertyChangeSupport.firePropertyChange("taskTime", oldTaskTime, taskTime);
}
public Integer getTaskTime() {
return taskTime;
}
public void setTaskName(String taskName) {
String oldTaskName = this.taskName;
this.taskName = taskName;
_propertyChangeSupport.firePropertyChange("taskName", oldTaskName, taskName);
}
public String getTaskName() {
return taskName;
}
@Override
public String toString() {
return "ClassPojo [taskId = " + taskId + ", taskType = " + taskType + ", taskTime = " + taskTime +
", taskName = " + taskName + "]";
}
public void addPropertyChangeListener(PropertyChangeListener l) {
_propertyChangeSupport.addPropertyChangeListener(l);
}
public void removePropertyChangeListener(PropertyChangeListener l) {
_propertyChangeSupport.removePropertyChangeListener(l);
}
}
protected transient ProviderChangeSupport providerChangeSupport = new ProviderChangeSupport(this);
public void addProviderChangeListener(ProviderChangeListener l) {
providerChangeSupport.addProviderChangeListener(l);
}
public void removeProviderChangeListener(ProviderChangeListener l) {
providerChangeSupport.removeProviderChangeListener(l);
}
public void clickEvent(ActionEvent actionEvent) {
try {
JSONObject paramsMap = new JSONObject();
paramsMap.put("userId", "1");
HttpURLConnection httpURLConnection = null;
try {
URL url = new URL("http://ec2-54-226-57-153.compute-1.amazonaws.com:8080/#########");
httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setReadTimeout(120000);
httpURLConnection.setConnectTimeout(120000);
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setRequestProperty("Content-Type", "application/json");
httpURLConnection.setDoInput(true);
httpURLConnection.setDoOutput(true);
httpURLConnection.connect();
OutputStream os = httpURLConnection.getOutputStream();
BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(os, "UTF-8"));
os.write(paramsMap.toString().getBytes());
bufferedWriter.flush();
bufferedWriter.close();
os.close();
if (httpURLConnection.getResponseCode() == HttpURLConnection.HTTP_OK) {
InputStream is = httpURLConnection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
StringBuilder builder = new StringBuilder();
String line = bufferedReader.readLine();
while (line != null) {
builder.append(line + "\n");
line = bufferedReader.readLine();
}
is.close();
if (httpURLConnection != null)
httpURLConnection.disconnect();
System.out.println(builder.toString());
JSONObject json = new JSONObject(builder.toString());
String status = json.optString("statusCode");
String message = json.optString("message");
String response = json.optString("response");
System.out.println(status);
System.out.println(message);
// System.out.println(response);
JSONArray objarr = json.optJSONArray("response");
Response[] temp_res = new Response[objarr.length()];
for (int i = 0; i < objarr.length(); i++) {
System.out.println(objarr.getJSONObject(i));
JSONObject obj = objarr.getJSONObject(i);
String task = obj.optString("taskName");
taskId = obj.optString("taskId");
String taskType = obj.optString("taskType");
System.out.println(task);
System.out.println(taskId);
System.out.println(taskType);
temp_res[i] = new Response(taskId, taskType, task);
}
setRes(temp_res);
} else {
if (httpURLConnection != null)
httpURLConnection.disconnect();
System.out.println("Invalid response from the server");
}
} catch (Exception e) {
e.printStackTrace();
if (httpURLConnection != null)
httpURLConnection.disconnect();
} finally {
if (httpURLConnection != null)
httpURLConnection.disconnect();
}
} catch (Exception e) {
e.printStackTrace();
}
}
公共类模型类{
私有字符串消息;
私有字符串状态码;
私有响应[]res=null;
受保护的瞬态PropertyChangeSupport _PropertyChangeSupport=新的PropertyChangeSupport(此);
公共模型类(){
超级();
单击事件(新建ActionEvent());
}
公共静态字符串taskId;
public void setTaskId(字符串taskId){
系统输出打印(taskId);
this.taskId=taskId;
}
公共字符串getTaskId(){
返回taskId;
}
公共属性更改支持getPropertyChangeSupport(){
返回属性更改支持;
}
公共无效设置消息(字符串消息){
字符串oldMessage=this.message;
this.message=消息;
_propertyChangeSupport.firePropertyChange(“消息”,旧消息,消息);
}
公共字符串getMessage(){
返回消息;
}
公共无效设置状态代码(字符串状态代码){
字符串oldStatusCode=this.statusCode;
this.statusCode=状态码;
_propertyChangeSupport.firePropertyChange(“状态码”,旧状态码,状态码);
}
公共字符串getStatusCode(){
返回状态码;
}
公共无效设置(响应[]设置){
响应[]oldRes=this.res;
this.res=res;
系统输出打印项次(res);
_propertyChangeSupport.firePropertyChange(“res”、oldRes、res);
System.out.println(“此处刷新”);
}
公共响应[]getRes(){
返回res;
}
@凌驾
公共字符串toString(){
返回“ClassPojo[response=“+res+”,message=“+message+”,statusCode=“+statusCode+”]”;
}
public void addPropertyChangeListener(PropertyChangeListener l){
_addPropertyChangeListener(l);
}
public void removePropertyChangeListener(PropertyChangeListener l){
_propertyChangeSupport.removePropertyChangeListener(l);
}
公众课堂反应{
私有字符串taskId;
私有字符串任务类型;
私有整数任务时间;
私有字符串taskName;
私有PropertyChangeSupport _PropertyChangeSupport=新PropertyChangeSupport(此);
响应(字符串taskId、字符串taskType、字符串taskName){
超级();
this.taskId=taskId;
this.taskType=taskType;
this.taskName=taskName;
}
public void setTaskId(字符串taskId){
字符串oldTaskId=this.taskId;
this.taskId=taskId;
_FirePropertyChangeSupport.firePropertyChange(“taskId”,旧taskId,taskId);
}
公共字符串getTaskId(){
返回taskId;
}
公共void setTaskType(字符串taskType){
字符串oldTaskType=this.taskType;
this.taskType=taskType;
_propertyChangeSupport.firePropertyChange(“taskType”,oldTaskType,taskType);
}
公共字符串getTaskType(){
返回任务类型;
}
public void setTaskTime(整数taskTime){
整数oldTaskTime=this.taskTime;
this.taskTime=taskTime;
_propertyChangeSupport.firePropertyChange(“taskTime”,oldTaskTime,taskTime);
}
公共整数getTaskTime(){
返回任务时间;
}
public void setTaskName(字符串taskName){
字符串oldstaskname=this.taskName;
this.taskName=taskName;
_propertyChangeSupport.firePropertyChange(“任务名”,旧任务名,任务名);
}
公共字符串getTaskName(){
返回任务名;
}
@凌驾
公共字符串toString(){
返回“ClassPojo[taskId=“+taskId+”,taskType=“+taskType+”,taskTime=“+taskTime+
,taskName=“+taskName+”];
}
public void addPropertyChangeListener(PropertyChangeListener l){
_addPropertyChangeListener(l);
}
public void removePropertyChangeListener(PropertyChangeListener l){
_propertyChangeSupport.removePropertyChangeListener(l);
}
}
受保护的瞬态ProviderChangeSupport ProviderChangeSupport=新ProviderChangeSupport(本);
public void addProviderChangeListener(ProviderChangeListener l){
providerChangeSupport.addProviderChangeListener(l);
}
public void removeProviderChangeListener(ProviderChangeListener l){
providerChangeSupport.removeProviderChangeListener(l);
}
公共作废clickEvent(ActionEvent ActionEvent){
试一试{
JSONObject paramsMap=新的JSONObject();
paramsMap.put(“userId”,“1”);
HttpURLConnection HttpURLConnection=null;
试一试{
URL=新URL(“http://ec2-54-226-57-153.compute-1.amazonaws.com:8080/#########");
httpURLConnection=(httpURLConnection)url.openConnection();
httpURLConnection.setReadTimeout(120000);
httpURLConnection.setConnectTimeout(120000);
httpURLConnection.setRequestMethod(“POST”);
setRequestProperty(“内容类型”、“应用程序/json”);
httpURLConnection.setDoInput(true);
httpURLConnection.setDoOutput(true);
httpURLConnection.connect();
OutputStream os=httpURLConnection.getOutputStream();
BufferedWriter BufferedWriter=新的BufferedWriter(新的OutputStreamWriter(os,“UTF-8”));
write(paramsMap.toString().getBytes());
bufferedWriter.flush();
bufferedWriter.close();
os.close();
if(httpURLConnection.getResponseCode()==httpURLConnection.HTTP\u确定){
InputStream=httpURLConnection.getInputStream();
BufferedReader BufferedReader=新的BufferedReader(新的InputStreamReader(即“UTF-8”);
StringBuilder bu
res = (Response[]) res_new.toArray(new Response[res_new.size()]);
setRes(res);
Response[] temp_res;
temp_res = (Response[]) res_new.toArray(new
Response[res_new.size()]);
setRes(temp_res);