tengo la siguiente interfaz:ayuda serialización Clase (org.omg.CORBA.MARSHAL: WARNUNG: IOP00810011: Excepción de error ...)
public interface Ranged
{
public Object getRangeStart();
public Object getRangeEnd();
public void setRangeStart(Object rangeStart);
public void setRangeEnd(Object rangeEnd);
}
y la siguiente clase de aplicación:
public class DateRange implements Ranged, Serializable
{
private static final long serialVersionUID=SerialVersionUID.getSerialVersionUID();
public DateRange()
{
}
private Date dateFrom;
private Date dateTo;
public Object getRangeStart()
{
return (Date)dateFrom;
}
public Object getRangeEnd()
{
return (Date)dateTo;
}
public void setRangeStart(Object from)
{
this.dateFrom = (Date)from;
}
public void setRangeEnd(Object to)
{
this.dateTo = (Date)to;
}
}
que utiliza la clase DateRange de la siguiente manera:
...
private DateRange creationDate;
private Date rangeStart;
private Date rangeStop;
...
public DateRange getCreationDate()
{
SimpleDateFormat sdf_incoming = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat sdf_outgoing = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
creationDate = null;
try
{
if (!isDateRange())
{
if (!rangeStart.toString().equals(""))
{
creationDate = new DateRange();
creationDate.setRangeStart(sdf_outgoing.parse(sdf_incoming.format(rangeStart) + TIME_0));
creationDate.setRangeEnd(sdf_outgoing.parse(sdf_incoming.format(rangeStart) + TIME_24));
}
}
else
{
if (!rangeStart.toString().equals("") && rangeStop.toString().equals(""))
{
creationDate = new DateRange();
creationDate.setRangeStart(sdf_outgoing.parse(sdf_incoming.format(rangeStart) + TIME_0));
creationDate.setRangeEnd(sdf_outgoing.parse(MAX_DATE));
}
else if (rangeStart.toString().equals("") && !rangeStop.toString().equals(""))
{
creationDate = new DateRange();
creationDate.setRangeStart(sdf_outgoing.parse(MIN_DATE));
creationDate.setRangeEnd(sdf_outgoing.parse(sdf_incoming.format(rangeStop) + TIME_24));
}
else
// both set
{
creationDate = new DateRange();
creationDate.setRangeStart(sdf_outgoing.parse(sdf_incoming.format(rangeStart) + TIME_0));
creationDate.setRangeEnd(sdf_outgoing.parse(sdf_incoming.format(rangeStop) + TIME_24));
}
}
}
catch (ParseException e)
{
e.printStackTrace();
}
return creationDate;
}
...
Esto sucede en el lado del cliente y cuando el creat ionDate debe ser serializado y pasar al lado del servidor, me sale el siguiente error:
[exec] 2011-12-06T13:34:00.132+0100|WARNING|glassfish3.1|javax.enterprise.resource.corba.ORBUtil|_ThreadID=17;_ThreadName=Thread-1;|IOP00810011: Exception from readValue on ValueHandler in CDRInputStream [exec] org.omg.CORBA.MARSHAL: WARNUNG: IOP00810011: Exception from readValue on ValueHandler in CDRInputStream vmcid: OMG minor code: 11 completed: Maybe [exec] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [exec] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) [exec] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) [exec] at java.lang.reflect.Constructor.newInstance(Constructor.java:513) [exec] at com.sun.corba.ee.spi.orbutil.logex.corba.CorbaExtension.makeException(CorbaExtension.java:248) [exec] at com.sun.corba.ee.spi.orbutil.logex.corba.CorbaExtension.makeException(CorbaExtension.java:95) [exec] at com.sun.corba.ee.spi.orbutil.logex.WrapperGenerator.handleFullLogging(WrapperGenerator.java:387) [exec] at com.sun.corba.ee.spi.orbutil.logex.WrapperGenerator.access$400(WrapperGenerator.java:107) [exec] at com.sun.corba.ee.spi.orbutil.logex.WrapperGenerator$2.invoke(WrapperGenerator.java:511) [exec] at com.sun.corba.ee.spi.orbutil.proxy.CompositeInvocationHandlerImpl.invoke(CompositeInvocationHandlerImpl.java:99) [exec] at $Proxy157.valuehandlerReadException(Unknown Source) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:1022) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1123) [exec] at com.sun.corba.ee.impl.encoding.CDRInputObject.read_value(CDRInputObject.java:531) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:2162) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:2404) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1224) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:425) [exec] at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:308) [exec] at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:274) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:1015) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1123) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:935) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:928) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:918) [exec] at com.sun.corba.ee.impl.encoding.CDRInputObject.read_abstract_interface(CDRInputObject.java:557) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.readObjectDelegate(IIOPInputStream.java:391) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.readObjectOverride(IIOPInputStream.java:544) [exec] at java.io.ObjectInputStream.readObject(ObjectInputStream.java:345) [exec] at java.util.ArrayList.readObject(ArrayList.java:593) [exec] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [exec] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [exec] at java.lang.reflect.Method.invoke(Method.java:597) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.invokeObjectReader(IIOPInputStream.java:1832) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1214) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:425) [exec] at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:308) [exec] at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:274) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:1015) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1123) [exec] at com.sun.corba.ee.impl.encoding.CDRInputObject.read_value(CDRInputObject.java:531) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:2162) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:2404) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1224) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:425) [exec] at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:308) [exec] at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:274) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:1015) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1123) [exec] at com.sun.corba.ee.impl.encoding.CDRInputObject.read_value(CDRInputObject.java:531) [exec] at com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl$14.read(DynamicMethodMarshallerImpl.java:384) [exec] at com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl.readArguments(DynamicMethodMarshallerImpl.java:451) [exec] at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie.invoke(ReflectiveTie.java:172) [exec] at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:528) [exec] at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:199) [exec] at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1624) [exec] at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:126) [exec] at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:273) [exec] at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:200) [exec] at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152) [exec] at com.sun.corba.ee.impl.presentation.rmi.codegen.CodegenStubBase.invoke(CodegenStubBase.java:227) [exec] at ch.ethz.id.wai.lakshmi.engine.ejb._LakshmiServerInterfaceBeanRemote_Remote_DynamicStub.submitOrderContext(ch/ethz/id/wai/lakshmi/engine/ejb/__LakshmiServerInter faceBeanRemote_Remote_DynamicStub.java) [exec] at ch.ethz.id.wai.lakshmi.engine.ejb._LakshmiServerInterfaceBeanRemote_Wrapper.submitOrderContext(ch/ethz/id/wai/lakshmi/engine/ejb/_LakshmiServerInterfaceBeanRemot e_Wrapper.java) [exec] at ch.ethz.id.wai.web.controller.Controller.submitOrder(Controller.java:49) [exec] at ch.ethz.id.wai.doi.DoiListController.submitOrder(DoiListController.java:56) [exec] at ch.ethz.id.wai.web.controller.ListController.selectData(ListController.java:54) [exec] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [exec] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [exec] at java.lang.reflect.Method.invoke(Method.java:597) [exec] at com.sun.el.parser.AstValue.invoke(AstValue.java:234) [exec] at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297) [exec] at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105) [exec] at com.sun.faces.facelets.tag.jsf.core.DeclarativeSystemEventListener.processEvent(EventHandler.java:131) [exec] at javax.faces.component.UIComponent$ComponentSystemEventListenerAdapter.processEvent(UIComponent.java:2508) [exec] at javax.faces.event.SystemEvent.processListener(SystemEvent.java:106) [exec] at com.sun.faces.application.ApplicationImpl.processListeners(ApplicationImpl.java:2129) [exec] at com.sun.faces.application.ApplicationImpl.invokeComponentListenersFor(ApplicationImpl.java:2077) [exec] at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:286) [exec] at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:244) [exec] at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:108) [exec] at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) [exec] at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) [exec] at javax.faces.webapp.FacesServlet.service(FacesServlet.java:410) [exec] at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534) [exec] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281) [exec] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) [exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655) [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595) [exec] at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98) [exec] at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91) [exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162) [exec] at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326) [exec] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227) [exec] at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:170) [exec] at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822) [exec] at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719) [exec] at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013) [exec] at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225) [exec] at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137) [exec] at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104) [exec] at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90) [exec] at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79) [exec] at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54) [exec] at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59) [exec] at com.sun.grizzly.ContextTask.run(ContextTask.java:71) [exec] at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532) [exec] at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513) [exec] at java.lang.Thread.run(Thread.java:619) [exec] Caused by: java.lang.NullPointerException [exec] at com.sun.corba.ee.impl.orbutil.ClassInfoCache$ClassInfo.(ClassInfoCache.java:156) [exec] at com.sun.corba.ee.impl.orbutil.ClassInfoCache.get(ClassInfoCache.java:281) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1097) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:935) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:928) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:918) [exec] at com.sun.corba.ee.impl.encoding.CDRInputObject.read_abstract_interface(CDRInputObject.java:557) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.readObjectDelegate(IIOPInputStream.java:391) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.readObjectOverride(IIOPInputStream.java:544) [exec] at java.io.ObjectInputStream.readObject(ObjectInputStream.java:345) [exec] at java.util.HashMap.readObject(HashMap.java:1030) [exec] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [exec] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [exec] at java.lang.reflect.Method.invoke(Method.java:597) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.invokeObjectReader(IIOPInputStream.java:1832) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1214) [exec] at com.sun.corba.ee.impl.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:425) [exec] at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:308) [exec] at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:274) [exec] at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:1015) [exec] ... 98 more [exec] |#] [exec]
¿Emite ya algo? Estoy realmente perdido. DateRange implementa Serializable y (java.util) La fecha también debe ser serializable. Avísame si se necesita más información.
Error encontrado. La clase DateRange no estaba en el servidor, por lo que el servidor no sabía cómo deserializarla ... – Francesco
Puede publicar la respuesta y aceptarla usted mismo. – Chris