Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FeatureEntity error in SOS 5.0.2 #826

Closed
EnocMartinez opened this issue May 25, 2020 · 1 comment
Closed

FeatureEntity error in SOS 5.0.2 #826

EnocMartinez opened this issue May 25, 2020 · 1 comment

Comments

@EnocMartinez
Copy link

Hi,
I'm trying to inject some data via InsertResults. SOS 4.4.14 handles it well, but SOS 5.0.2 throws this error:

  <ows:Exception exceptionCode="NoApplicableCode">
    <ows:ExceptionText>[EXEPTION]: 
A different object with the same identifier value was already associated with the session : [org.n52.series.db.beans.FeatureEntity#3]</ows:ExceptionText>
  </ows:Exception>

The logs don't give much info either:

2020-05-25 12:23:26,866 WARN [http-nio-8080-exec-3] [PoxBinding.java:90] Unexpected error
org.n52.shetland.ogc.ows.exception.NoApplicableCodeException: null
	at org.n52.sos.ds.hibernate.InsertResultHandler.insertResult(InsertResultHandler.java:246)
	at org.n52.sos.request.operator.SosInsertResultOperatorV20.receive(SosInsertResultOperatorV20.java:75)
	at org.n52.sos.request.operator.SosInsertResultOperatorV20.receive(SosInsertResultOperatorV20.java:51)
	at org.n52.sos.request.operator.AbstractRequestOperator.receiveRequest(AbstractRequestOperator.java:380)
	at org.n52.sos.request.operator.AbstractTransactionalRequestOperator.receiveRequest(AbstractTransactionalRequestOperator.java:88)
	at org.n52.iceland.service.operator.GenericServiceOperator.receiveRequest(GenericServiceOperator.java:100)
	at org.n52.iceland.binding.pox.PoxBinding.doPostOperation(PoxBinding.java:86)
	at org.n52.iceland.service.Service.post(Service.java:150)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:879)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:793)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:209)
	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.thetransactioncompany.cors.CORSFilter.doFilter(CORSFilter.java:209)
	at com.thetransactioncompany.cors.CORSFilter.doFilter(CORSFilter.java:244)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:200)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.hibernate.NonUniqueObjectException: A different object with the same identifier value was already associated with the session : [org.n52.series.db.beans.FeatureEntity#3]
	at org.hibernate.engine.internal.StatefulPersistenceContext.checkUniqueness(StatefulPersistenceContext.java:696)
	at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.performUpdate(DefaultSaveOrUpdateEventListener.java:287)
	at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsDetached(DefaultSaveOrUpdateEventListener.java:230)
	at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:95)
	at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:75)
	at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:102)
	at org.hibernate.internal.SessionImpl.fireSaveOrUpdate(SessionImpl.java:606)
	at org.hibernate.internal.SessionImpl.saveOrUpdate(SessionImpl.java:599)
	at org.hibernate.internal.SessionImpl.saveOrUpdate(SessionImpl.java:594)
	at org.n52.sos.ds.hibernate.dao.FeatureOfInterestDAO.updateFeatureOfInterestGeometry(FeatureOfInterestDAO.java:397)
	at org.n52.sos.ds.hibernate.dao.observation.ObservationPersister.checkUpdateFeatureOfInterestGeometry(ObservationPersister.java:802)
	at org.n52.sos.ds.hibernate.dao.observation.ObservationPersister.persist(ObservationPersister.java:611)
	at org.n52.sos.ds.hibernate.dao.observation.ObservationPersister.setUnitAndPersist(ObservationPersister.java:548)
	at org.n52.sos.ds.hibernate.dao.observation.ObservationPersister.visit(ObservationPersister.java:203)
	at org.n52.sos.ds.hibernate.dao.observation.ObservationPersister.visit(ObservationPersister.java:125)
	at org.n52.shetland.ogc.om.values.QuantityValue.accept(QuantityValue.java:150)
	at org.n52.sos.ds.hibernate.dao.observation.ObservationPersister.persistChildren(ObservationPersister.java:397)
	at org.n52.sos.ds.hibernate.dao.observation.ObservationPersister.visit(ObservationPersister.java:250)
	at org.n52.sos.ds.hibernate.dao.observation.ObservationPersister.visit(ObservationPersister.java:125)
	at org.n52.shetland.ogc.om.values.ComplexValue.accept(ComplexValue.java:111)
	at org.n52.sos.ds.hibernate.dao.observation.AbstractObservationDAO.insertObservationSingleValue(AbstractObservationDAO.java:662)
	at org.n52.sos.ds.hibernate.InsertResultHandler.insertResult(InsertResultHandler.java:220)

Is it a bug or something have changed from 4.4.14 to 5.0.2?

@CarstenHollmann
Copy link

Hi, this seems to be a bug. We will check this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants