Warning: Can't synchronize with repository "(default)" (/home/git/ome.git does not appear to be a Git repository.). Look in the Trac log for more information.
Notice: In order to edit this ticket you need to be either: a Product Owner, The owner or the reporter of the ticket, or, in case of a Task not yet assigned, a team_member"

Task #1646 (closed)

Opened 14 years ago

Closed 14 years ago

RE.render() can throw a ClassCastException

Reported by: jamoore Owned by: jburel
Priority: major Milestone: OMERO-Beta4.2
Component: Services Version: 4.1
Keywords: n.a. Cc: cxallan
Resources: n.a. Referenced By: n.a.
References: n.a. Remaining Time: n.a.
Sprint: 2010-06-24 (12)

Change History (4)

comment:1 Changed 14 years ago by jmoore

  • Type changed from Bug to Task

comment:2 Changed 14 years ago by cxallan

  • Description modified (diff)
InternalException: exception ::omero::InternalException
{
    serverStackTrace = ome.conditions.InternalException:  Wrapped Exception: (java.lang.ClassCastException):
omeis.providers.re.RGBBuffer cannot be cast to omeis.providers.re.RGBIntBuffer
        at omeis.providers.re.RenderHSBRegionTask.renderPackedInt(RenderHSBRegionTask.java:203)
        at omeis.providers.re.RenderHSBRegionTask.call(RenderHSBRegionTask.java:122)
        at omeis.providers.re.HSBStrategy.render(HSBStrategy.java:327)
        at omeis.providers.re.HSBStrategy.render(HSBStrategy.java:254)
        at omeis.providers.re.Renderer.render(Renderer.java:405)
        at ome.services.RenderingBean.render(RenderingBean.java:417)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at ome.services.util.ServiceHandler.invoke(ServiceHandler.java:100)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy77.render(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at ome.security.basic.BasicSecurityWiring.invoke(BasicSecurityWiring.java:78)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at ome.services.blitz.fire.AopContextInitializer.invoke(AopContextInitializer.java:35)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy77.render(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at ome.services.blitz.util.IceMethodInvoker.callOrClose(IceMethodInvoker.java:257)
        at ome.services.blitz.util.IceMethodInvoker.invoke(IceMethodInvoker.java:179)
        at ome.services.throttling.Callback.run(Callback.java:55)
        at ome.services.throttling.InThreadThrottlingStrategy.callInvokerOnRawArgs(InThreadThrottlingStrategy.java:37)
        at ome.services.blitz.impl.AbstractAmdServant.callInvokerOnRawArgs(AbstractAmdServant.java:115)
        at ome.services.blitz.impl.RenderingEngineI.render_async(RenderingEngineI.java:292)
        at omero.api._RenderingEngineTie.render_async(_RenderingEngineTie.java:239)
        at omero.api._RenderingEngineDisp.___render(_RenderingEngineDisp.java:429)
        at omero.api._RenderingEngineDisp.__dispatch(_RenderingEngineDisp.java:1558)
        at IceInternal.Incoming.invoke(Incoming.java:159)
        at Ice.ConnectionI.invokeAll(ConnectionI.java:2037)
        at Ice.ConnectionI.message(ConnectionI.java:972)
        at IceInternal.ThreadPool.run(ThreadPool.java:577)
        at IceInternal.ThreadPool.access$100(ThreadPool.java:12)
        at IceInternal.ThreadPool$EventHandlerThread.run(ThreadPool.java:971)

    serverExceptionClass = ome.conditions.InternalException
    message =  Wrapped Exception: (java.lang.ClassCastException):
omeis.providers.re.RGBBuffer cannot be cast to omeis.providers.re.RGBIntBuffer

pixels obj on warlock:

In [13]: object #0 (::omero::model::Pixels)
{
    _id = object #1 (::omero::RLong)
    {
        _val = 7130
    }
    _details = object #2 (::omero::model::Details)
    {
        _owner = object #3 (::omero::model::Experimenter)
        {
            _id = object #4 (::omero::RLong)
            {
                _val = 0
            }
            _details = <nil>
            _loaded = False
            _version = <nil>
            _groupExperimenterMapSeq = 
            {
            }
            _groupExperimenterMapLoaded = False
            _groupExperimenterMapCountPerOwner = 
            {
            }
            _omeName = <nil>
            _firstName = <nil>
            _middleName = <nil>
            _lastName = <nil>
            _institution = <nil>
            _email = <nil>
            _annotationLinksSeq = 
            {
            }
            _annotationLinksLoaded = False
            _annotationLinksCountPerOwner = 
            {
            }
        }
        _group = object #5 (::omero::model::ExperimenterGroup)
        {
            _id = <object #4>
            _details = <nil>
            _loaded = False
            _version = <nil>
            _name = <nil>
            _groupExperimenterMapSeq = 
            {
            }
            _groupExperimenterMapLoaded = False
            _groupExperimenterMapCountPerOwner = 
            {
            }
            _annotationLinksSeq = 
            {
            }
            _annotationLinksLoaded = False
            _annotationLinksCountPerOwner = 
            {
            }
            _description = <nil>
        }
        _creationEvent = object #6 (::omero::model::Event)
        {
            _id = object #7 (::omero::RLong)
            {
                _val = 654731
            }
            _details = <nil>
            _loaded = False
            _status = <nil>
            _time = <nil>
            _experimenter = <nil>
            _experimenterGroup = <nil>
            _type = <nil>
            _containingEvent = <nil>
            _logsSeq = 
            {
            }
            _logsLoaded = False
            _session = <nil>
        }
        _updateEvent = object #8 (::omero::model::Event)
        {
            _id = object #9 (::omero::RLong)
            {
                _val = 654732
            }
            _details = <nil>
            _loaded = False
            _status = <nil>
            _time = <nil>
            _experimenter = <nil>
            _experimenterGroup = <nil>
            _type = <nil>
            _containingEvent = <nil>
            _logsSeq = 
            {
            }
            _logsLoaded = False
            _session = <nil>
        }
        _permissions = object #10 (::omero::model::Permissions)
        {
            _perm1 = -103
        }
        _externalInfo = <nil>
    }
    _loaded = True
    _version = <nil>
    _image = object #11 (::omero::model::Image)
    {
        _id = object #12 (::omero::RLong)
        {
            _val = 7030
        }
        _details = object #13 (::omero::model::Details)
        {
            _owner = <object #3>
            _group = <object #5>
            _creationEvent = <object #6>
            _updateEvent = <object #6>
            _permissions = object #14 (::omero::model::Permissions)
            {
                _perm1 = -103
            }
            _externalInfo = <nil>
        }
        _loaded = True
        _version = <nil>
        _acquisitionDate = object #15 (::omero::RTime)
        {
            _val = 1235730367000
        }
        _archived = object #16 (::omero::RBool)
        {
            _val = False
        }
        _imagingEnvironment = <nil>
        _objectiveSettings = object #17 (::omero::model::ObjectiveSettings)
        {
            _id = object #18 (::omero::RLong)
            {
                _val = 2955
            }
            _details = <nil>
            _loaded = False
            _version = <nil>
            _correctionCollar = <nil>
            _medium = <nil>
            _refractiveIndex = <nil>
            _objective = <nil>
        }
        _instrument = object #19 (::omero::model::Instrument)
        {
            _id = object #20 (::omero::RLong)
            {
                _val = 2205
            }
            _details = <nil>
            _loaded = False
            _version = <nil>
            _microscope = <nil>
            _detectorSeq = 
            {
            }
            _detectorLoaded = False
            _objectiveSeq = 
            {
            }
            _objectiveLoaded = False
            _lightSourceSeq = 
            {
            }
            _lightSourceLoaded = False
            _filterSeq = 
            {
            }
            _filterLoaded = False
            _dichroicSeq = 
            {
            }
            _dichroicLoaded = False
            _filterSetSeq = 
            {
            }
            _filterSetLoaded = False
            _otfSeq = 
            {
            }
            _otfLoaded = False
        }
        _stageLabel = <nil>
        _experiment = <nil>
        _pixelsSeq = 
        {
        }
        _pixelsLoaded = False
        _wellSamplesSeq = 
        {
        }
        _wellSamplesLoaded = False
        _roisSeq = 
        {
        }
        _roisLoaded = False
        _datasetLinksSeq = 
        {
        }
        _datasetLinksLoaded = False
        _datasetLinksCountPerOwner = 
        {
        }
        _annotationLinksSeq = 
        {
        }
        _annotationLinksLoaded = False
        _annotationLinksCountPerOwner = 
        {
        }
        _name = object #21 (::omero::RString)
        {
            _val = /Users/TheBrain/test_images_shortrun/dv/CFPNEAT01_R3D.dv
        }
        _description = object #22 (::omero::RString)
        {
            _val = 
        }
    }
    _relatedTo = <nil>
    _pixelsType = object #23 (::omero::model::PixelsType)
    {
        _id = object #24 (::omero::RLong)
        {
            _val = 6
        }
        _details = <nil>
        _loaded = False
        _value = <nil>
    }
    _sizeX = object #25 (::omero::RInt)
    {
        _val = 512
    }
    _sizeY = object #26 (::omero::RInt)
    {
        _val = 512
    }
    _sizeZ = object #27 (::omero::RInt)
    {
        _val = 29
    }
    _sizeC = object #28 (::omero::RInt)
    {
        _val = 2
    }
    _sizeT = object #29 (::omero::RInt)
    {
        _val = 1
    }
    _sha1 = object #30 (::omero::RString)
    {
        _val = 0b1ae25f7a84add8631c813dea8b437a1cbbb740
    }
    _dimensionOrder = object #31 (::omero::model::DimensionOrder)
    {
        _id = object #32 (::omero::RLong)
        {
            _val = 1
        }
        _details = <nil>
        _loaded = False
        _value = <nil>
    }
    _physicalSizeX = object #33 (::omero::RDouble)
    {
        _val = 0.12698
    }
    _physicalSizeY = object #34 (::omero::RDouble)
    {
        _val = 0.12698
    }
    _physicalSizeZ = object #35 (::omero::RDouble)
    {
        _val = 0.2
    }
    _waveStart = <nil>
    _waveIncrement = <nil>
    _timeIncrement = <nil>
    _methodology = <nil>
    _planeInfoSeq = 
    {
    }
    _planeInfoLoaded = False
    _pixelsFileMapsSeq = 
    {
    }
    _pixelsFileMapsLoaded = False
    _pixelsFileMapsCountPerOwner = 
    {
    }
    _channelsSeq = 
    {
    }
    _channelsLoaded = False
    _settingsSeq = 
    {
    }
    _settingsLoaded = False
    _thumbnailsSeq = 
    {
    }
    _thumbnailsLoaded = False
    _annotationLinksSeq = 
    {
    }
    _annotationLinksLoaded = False
    _annotationLinksCountPerOwner = 
    {
    }
}

comment:3 Changed 14 years ago by jburel

  • Cc cxallan added
  • Owner changed from cxallan to jburel
  • Sprint set to 2010-06-24 (12)
  • Status changed from new to assigned

comment:4 Changed 14 years ago by jburel

  • Resolution set to fixed
  • Status changed from assigned to closed

r7340. insight clients uses the renderAsPackedInt, I will assume most clients will do.
Do we want to keep the render() method?

Note: See TracTickets for help on using tickets. You may also have a look at Agilo extensions to the ticket.

1.3.13-PRO © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.67750 sec.)

We're Hiring!