USEPA / emf

Emissions Modeling Framework (EMF)
6 stars 3 forks source link

dataset type pull-down needs to set selection when Enter key is pressed #71

Closed cseppan closed 2 years ago

cseppan commented 2 years ago

After the changes from issue #44, the dataset type pull-down isn't always getting the right selection when the Enter key is pressed.

Steps to reproduce:

Open the Dataset Manager window and use the mouse to select a dataset type After the datasets have loaded, use the mouse to open the dataset type pull-down menu Use the arrow keys to move up and down and select a new dataset type Hitting Enter should load datasets of the newly selected type, but instead the old type is used. If you press Space before hitting Enter, then the selection gets updated as expected.

Note that if the current selection is "Select one" and you use the arrow keys to select the type and hit Enter, then the new selection is used right away.

cseppan commented 2 years ago

May be related - when I hit Space then Enter to select the dataset type via keyboard, the list of datasets refreshes as expected but an exception is logged.

11 Aug 2021 19:27:10,375 ERROR Call:2469 - Exception:
org.xml.sax.SAXException: Bad types (class [Ljava.lang.Object; -> int)
    at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:286)
    at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
    at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
    at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141)
    at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236)
    at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
    at org.apache.axis.client.Call.invoke(Call.java:2467)
    at org.apache.axis.client.Call.invoke(Call.java:2366)
    at org.apache.axis.client.Call.invoke(Call.java:1812)
    at gov.epa.emissions.framework.client.transport.EmfCall.requestResponse(EmfCall.java:58)
    at gov.epa.emissions.framework.client.transport.DataServiceTransport.getDatasetsWithFilter(DataServiceTransport.java:99)
    at gov.epa.emissions.framework.client.data.dataset.DatasetsBrowserPresenter.getEmfDatasets(DatasetsBrowserPresenter.java:205)
    at gov.epa.emissions.framework.client.data.dataset.DatasetsBrowserWindow$1RefreshDatasetsTask.doInBackground(DatasetsBrowserWindow.java:799)
    at gov.epa.emissions.framework.client.data.dataset.DatasetsBrowserWindow$1RefreshDatasetsTask.doInBackground(DatasetsBrowserWindow.java:1)
    at javax.swing.SwingWorker$1.call(SwingWorker.java:295)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at javax.swing.SwingWorker.run(SwingWorker.java:334)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
org.xml.sax.SAXException: Bad types (class [Ljava.lang.Object; -> int)
AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
 faultSubcode: 
 faultString: org.xml.sax.SAXException: Bad types (class [Ljava.lang.Object; -> int)
 faultActor: 
 faultNode: 
 faultDetail: 
    {http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException: Bad types (class [Ljava.lang.Object; -> int)
    at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:286)
    at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
    at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
    at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141)
    at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236)
    at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
    at org.apache.axis.client.Call.invoke(Call.java:2467)
    at org.apache.axis.client.Call.invoke(Call.java:2366)
    at org.apache.axis.client.Call.invoke(Call.java:1812)
    at gov.epa.emissions.framework.client.transport.EmfCall.requestResponse(EmfCall.java:58)
    at gov.epa.emissions.framework.client.transport.DataServiceTransport.getDatasetsWithFilter(DataServiceTransport.java:99)
    at gov.epa.emissions.framework.client.data.dataset.DatasetsBrowserPresenter.getEmfDatasets(DatasetsBrowserPresenter.java:205)
    at gov.epa.emissions.framework.client.data.dataset.DatasetsBrowserWindow$1RefreshDatasetsTask.doInBackground(DatasetsBrowserWindow.java:799)
    at gov.epa.emissions.framework.client.data.dataset.DatasetsBrowserWindow$1RefreshDatasetsTask.doInBackground(DatasetsBrowserWindow.java:1)
    at javax.swing.SwingWorker$1.call(SwingWorker.java:295)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at javax.swing.SwingWorker.run(SwingWorker.java:334)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

    {http://xml.apache.org/axis/}hostname:Beemo.lan

org.xml.sax.SAXException: Bad types (class [Ljava.lang.Object; -> int)
    at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)
    at org.apache.axis.client.Call.invoke(Call.java:2470)
    at org.apache.axis.client.Call.invoke(Call.java:2366)
    at org.apache.axis.client.Call.invoke(Call.java:1812)
    at gov.epa.emissions.framework.client.transport.EmfCall.requestResponse(EmfCall.java:58)
    at gov.epa.emissions.framework.client.transport.DataServiceTransport.getDatasetsWithFilter(DataServiceTransport.java:99)
    at gov.epa.emissions.framework.client.data.dataset.DatasetsBrowserPresenter.getEmfDatasets(DatasetsBrowserPresenter.java:205)
    at gov.epa.emissions.framework.client.data.dataset.DatasetsBrowserWindow$1RefreshDatasetsTask.doInBackground(DatasetsBrowserWindow.java:799)
    at gov.epa.emissions.framework.client.data.dataset.DatasetsBrowserWindow$1RefreshDatasetsTask.doInBackground(DatasetsBrowserWindow.java:1)
    at javax.swing.SwingWorker$1.call(SwingWorker.java:295)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at javax.swing.SwingWorker.run(SwingWorker.java:334)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: org.xml.sax.SAXException: Bad types (class [Ljava.lang.Object; -> int)
    at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:286)
    at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
    at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
    at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141)
    at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236)
    at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
    at org.apache.axis.client.Call.invoke(Call.java:2467)
    ... 13 more