syncronizacion stops when mobilebean property have some special spanish character with error: failed Invalid byte 2 of 3-byte UTF-8 sequence.
1. my MobileBean TCliente :
public class TCliente implements MobileBean, Serializable {
private static final long serialVersionUID = -13825574505549274L;
@Id
@Column(name="cli_id")
private String cliId;
@Column(name="cta_id")
private String ctaId;
@Column(name="ciu_id")
private Integer ciuId;
@Column(name="pai_id")
private Integer paiId;
@Column(name="dep_id")
private Integer depId;
@Column(name="cli_nombre")
private String cliNombre;
@Column(name="cli_apellido")
private String cliApellido;
....
2 .when the property cliNombre have special Spanish character like " Ñ, ñ ", the sync proceses stop
3. the first 25 record sync fine in bootup proces.
what is wrong ?
4. Error Log
[Fatal Error] :49:12: Invalid byte 2 of 3-byte UTF-8 sequence.
ERROR - class org.openmobster.core.synchronizer.server.workflow.Utilities
java.lang.RuntimeException: org.apache.xerces.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
at org.openmobster.core.common.XMLUtilities.parse(XMLUtilities.java:83)
at org.openmobster.core.synchronizer.server.engine.MobileObjectGateway.parseId(MobileObjectGateway.java:110)
at org.openmobster.core.synchronizer.server.engine.ServerSyncEngineImpl.clearChangeLogEntry(ServerSyncEngineImpl.java:685)
at org.openmobster.core.synchronizer.server.workflow.Utilities.cleanupChangeLog(Utilities.java:235)
at org.openmobster.core.synchronizer.server.workflow.EnterClose.execute(EnterClose.java:47)
at org.jbpm.graph.def.Action.execute(Action.java:129)
at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:284)
at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:241)
at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:213)
at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:196)
at org.jbpm.graph.def.Node.enter(Node.java:371)
at org.jbpm.graph.def.Transition.take(Transition.java:167)
at org.jbpm.graph.def.Node.leave(Node.java:479)
at org.jbpm.graph.exe.ExecutionContext.leaveNode(ExecutionContext.java:155)
at org.jbpm.graph.node.Decision.execute(Decision.java:194)
at org.jbpm.graph.def.Node.enter(Node.java:390)
at org.jbpm.graph.def.Transition.take(Transition.java:167)
at org.jbpm.graph.def.Node.leave(Node.java:479)
at org.jbpm.graph.exe.Token.signal(Token.java:223)
at org.jbpm.graph.exe.Token.signal(Token.java:150)
at org.openmobster.core.synchronizer.server.SyncJBPMServerAdapter.process(SyncJBPMServerAdapter.java:219)
at org.openmobster.core.synchronizer.server.SyncJBPMServerAdapter.service(SyncJBPMServerAdapter.java:154)
at org.openmobster.core.dataService.processor.SyncProcessor.process(SyncProcessor.java:84)
at org.openmobster.core.dataService.server.ProcessorController.processMessage(ProcessorController.java:89)
at org.openmobster.core.dataService.server.ProcessorController.execute(ProcessorController.java:47)
at org.openmobster.core.dataService.server.ServerHandler.messageReceived(ServerHandler.java:110)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:690)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:47)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:765)
at org.openmobster.core.dataService.server.AuthenticationFilter.messageReceived(AuthenticationFilter.java:81)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:47)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:765)
at org.openmobster.core.dataService.server.TransactionFilter.messageReceived(TransactionFilter.java:37)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:47)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:765)
at org.openmobster.core.dataService.server.RequestConstructionFilter.messageReceived(RequestConstructionFilter.java:47)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:47)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:765)
at org.openmobster.core.dataService.server.PayloadFilter.messageReceived(PayloadFilter.java:52)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:47)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:765)
at org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:74)
at org.apache.mina.core.session.IoEvent.run(IoEvent.java:63)
at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.runTask(OrderedThreadPoolExecutor.java:769)
at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.runTasks(OrderedThreadPoolExecutor.java:761)
at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.run(OrderedThreadPoolExecutor.java:703)
at java.lang.Thread.run(Thread.java:680)
Caused by: org.apache.xerces.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:124)
at org.openmobster.core.common.XMLUtilities.parse(XMLUtilities.java:77)
... 51 more
Caused by: org.apache.xerces.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.
at org.apache.xerces.impl.io.UTF8Reader.invalidByte(Unknown Source)
at org.apache.xerces.impl.io.UTF8Reader.read(Unknown Source)
at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
at org.apache.xerces.impl.XMLEntityScanner.scanContent(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanContent(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
... 55 more
DEBUG - Sending------------------------------------------------------------------------
DEBUG - <SyncML>