如何在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);