Problems upload images XNAT 1.6.2.1

120 views
Skip to first unread message

Ivan Muñoz Palomino

unread,
Jan 9, 2014, 4:56:41 AM1/9/14
to xnat_di...@googlegroups.com
Hello, I try to archive images gives me the following error in the logs, I am following the example of the web and this happens ...:

prearchive.log

ERROR org.nrg.xnat.helpers.prearchive.PrearcTableBuilder - Error during archive process
org.nrg.xnat.helpers.prearchive.PrearcDatabase$SyncFailedException: URI references data outside of the archive:C:/Library/XNAT/archive/p/arc001/session_1/SCANS/4/DICOM/scan_4_catalog.xml
at org.nrg.xnat.helpers.prearchive.PrearcDatabase$10.extSync(PrearcDatabase.java:517)
at org.nrg.xnat.helpers.prearchive.PrearcDatabase$10.extSync(PrearcDatabase.java:512)
at org.nrg.xnat.helpers.prearchive.PrearcDatabase$LockAndSync.run(PrearcDatabase.java:1109)
at org.nrg.xnat.helpers.prearchive.PrearcDatabase._archive(PrearcDatabase.java:536)
at org.nrg.xnat.helpers.prearchive.PrearcDatabase.archive(PrearcDatabase.java:485)
at org.nrg.xnat.restlet.services.Archiver.handlePost(Archiver.java:214)
at org.restlet.Finder.handle(Finder.java:357)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Router.handle(Router.java:504)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Router.handle(Router.java:504)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Filter.doHandle(Filter.java:150)
at com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:130)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at com.noelios.restlet.ChainHelper.handle(ChainHelper.java:124)
at com.noelios.restlet.application.ApplicationHelper.handle(ApplicationHelper.java:112)
at org.restlet.Application.handle(Application.java:341)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Router.handle(Router.java:504)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Router.handle(Router.java:504)
at org.restlet.Filter.doHandle(Filter.java:150)
at com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:130)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at com.noelios.restlet.ChainHelper.handle(ChainHelper.java:124)
at org.restlet.Component.handle(Component.java:673)
at org.restlet.Server.handle(Server.java:331)
at com.noelios.restlet.ServerHelper.handle(ServerHelper.java:68)
at com.noelios.restlet.http.HttpServerHelper.handle(HttpServerHelper.java:147)
at com.noelios.restlet.ext.servlet.ServerServlet.service(ServerServlet.java:881)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:163)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:206)
at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:179)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.nrg.xnat.restlet.util.UpdateExpirationCookie.doFilter(UpdateExpirationCookie.java:38)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:369)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.nrg.xnat.security.XnatArcSpecFilter.doFilter(XnatArcSpecFilter.java:40)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.nrg.xnat.security.XnatBasicAuthenticationFilter.doFilter(XnatBasicAuthenticationFilter.java:134)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.session.ConcurrentSessionFilter.doFilter(ConcurrentSessionFilter.java:109)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.nrg.xnat.security.XnatExpiredPasswordFilter.doFilter(XnatExpiredPasswordFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:109)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:168)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
Caused by: org.nrg.action.ServerException: URI references data outside of the archive:C:/Library/XNAT/archive/p/arc001/session_1/SCANS/4/DICOM/scan_4_catalog.xml
at org.nrg.xnat.helpers.merge.MergeSessionsA.call(MergeSessionsA.java:185)
at org.nrg.xnat.archive.PrearcSessionArchiver.call(PrearcSessionArchiver.java:561)
at org.nrg.xnat.helpers.prearchive.PrearcDatabase$10.extSync(PrearcDatabase.java:515)
... 105 more

restled.log

java.lang.NullPointerException
at org.nrg.xnat.helpers.prearchive.PrearcDatabase.wrapException(PrearcDatabase.java:554)
at org.nrg.xnat.helpers.prearchive.PrearcDatabase._archive(PrearcDatabase.java:545)
at org.nrg.xnat.helpers.prearchive.PrearcDatabase.archive(PrearcDatabase.java:485)
at org.nrg.xnat.restlet.services.Archiver.handlePost(Archiver.java:214)
at org.restlet.Finder.handle(Finder.java:357)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Router.handle(Router.java:504)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Router.handle(Router.java:504)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Filter.doHandle(Filter.java:150)
at com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:130)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at com.noelios.restlet.ChainHelper.handle(ChainHelper.java:124)
at com.noelios.restlet.application.ApplicationHelper.handle(ApplicationHelper.java:112)
at org.restlet.Application.handle(Application.java:341)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Router.handle(Router.java:504)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Router.handle(Router.java:504)
at org.restlet.Filter.doHandle(Filter.java:150)
at com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:130)
at org.restlet.Filter.handle(Filter.java:195)
at org.restlet.Filter.doHandle(Filter.java:150)
at org.restlet.Filter.handle(Filter.java:195)
at com.noelios.restlet.ChainHelper.handle(ChainHelper.java:124)
at org.restlet.Component.handle(Component.java:673)
at org.restlet.Server.handle(Server.java:331)
at com.noelios.restlet.ServerHelper.handle(ServerHelper.java:68)
at com.noelios.restlet.http.HttpServerHelper.handle(HttpServerHelper.java:147)
at com.noelios.restlet.ext.servlet.ServerServlet.service(ServerServlet.java:881)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:163)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:206)
at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:179)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.nrg.xnat.restlet.util.UpdateExpirationCookie.doFilter(UpdateExpirationCookie.java:38)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:369)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.nrg.xnat.security.XnatArcSpecFilter.doFilter(XnatArcSpecFilter.java:40)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.nrg.xnat.security.XnatBasicAuthenticationFilter.doFilter(XnatBasicAuthenticationFilter.java:134)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.session.ConcurrentSessionFilter.doFilter(ConcurrentSessionFilter.java:109)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.nrg.xnat.security.XnatExpiredPasswordFilter.doFilter(XnatExpiredPasswordFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:109)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:381)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:168)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)


Rick Herrick

unread,
Jan 9, 2014, 12:27:49 PM1/9/14
to xnat_di...@googlegroups.com
Hello. Ivan. I suspect that you retained the default value for the xdat.archive.location setting in build.properties (and probably for the prearchive, cache and other settings). That default value (or at least what's in the build.properties.sample starting point in the XNAT repository) is /Library/XNAT/archive, which is the path used for some XNAT builds on Mac OS X. The problem on Windows is that that becomes a relative path, since Windows requires the drive specifier. It presumes the current drive setting for the current process, which in your case is C: and so it prepends that onto the path to achieve an absolute path. But then it tries to match the absolute path (C:/Library/XNAT/archive) with what it believes to be the archive setting (/Library/XNAT) and fails because it doesn't believe that this is a valid location for the archive.

There are a number of issues around this that we want to address (e.g. we'd like be able to address locations outside of the archive!), but that's not there right now so the best thing to do is just adjust the system to use an absolute path for the archive and other folder locations.

If you've created the required folders on your C: drive, i.e. there really IS a C:/Library/XNAT/archive/et/al, then you can proceed. Otherwise, you need to create those folders, as the archive process won't create the root folders itself.

Once you've done that, within XNAT go to Administer->Configuration, click on the File System tab, and update all of the paths on that tab to have the absolute path to the various locations. Click Save, then try your operations again.

I don't THINK you need to restart Tomcat, but I could be wrong...
Message has been deleted

Ivan Muñoz Palomino

unread,
Jan 10, 2014, 4:02:08 AM1/10/14
to xnat_di...@googlegroups.com
Thanks Rick, now the problem I have, the images do not appear when you click on them, "Unable to find file.", Not if you have to do with the version of java used ... I have the 1.7.0_21.

Thank you.
images.png

Tim Olsen

unread,
Jan 10, 2014, 10:52:16 AM1/10/14
to xnat_di...@googlegroups.com

Can you try creating a new project and uploading data to it?  The settings for your older projects may have retained the old archive location.

 

Tim

--
You received this message because you are subscribed to the Google Groups "xnat_discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to xnat_discussi...@googlegroups.com.
To post to this group, send email to xnat_di...@googlegroups.com.
Visit this group at http://groups.google.com/group/xnat_discussion.
For more options, visit https://groups.google.com/groups/opt_out.

leo wolf

unread,
Apr 21, 2016, 9:17:15 AM4/21/16
to xnat_discussion
Hi Rick,

I recently started with XNAT, version 1.6.4 under Tomcat 7.0 on Window 7. I had the same same error as above be it after uploading DICOM files. Referring to your solution, these are the properties:
xdat.archive.location=C:/Library/XNAT/archive

# Location where image data is stored temporarily before it is moved into the archive, e.g. /tmp/prearchive.
xdat.prearchive.location=C:/Library/XNAT/prearchive

# Location where cached image data is stored, e.g. /tmp/cache.
xdat.cache.location=C:/Library/XNAT/cache

# Location for ftp data
xdat.ftp.location=C:/Library/XNAT/ftp

# Location for build data.
xdat.build.location=C:/Library/XNAT/build

and the directories do exist as such. When uploading, it first seems to be OK (green progress bar), but then ends with server error 500. From the Tomcat localhost_access_log:



 Looking in the prearchive/Details shows:



and logfiles show that same error. In the xdat.log there are also errors like:

2016-04-21 14:10:24,806 [http-bio-8084-exec-9] ERROR org.nrg.xft.db.DBAction - Error saving item:
<XFTItem name="xnat:resource">
    <content>RAW</content>
    <format>DICOM</format>
    <resource_info>50</resource_info>
    <uri>C:/Library/XNAT/archive/LW/arc001/00698_MR1/SCANS/501/DICOM/scan_501_catalog.xml</uri>
    <xnat_abstractresource_id>50</xnat_abstractresource_id>
    <abstractresource_abstractresource>
        <XFTItem name="xnat:abstractResource">
            <abstractresource_info>50</abstractresource_info>
            <extension>223</extension>
            <file_count>216</file_count>
            <file_size>29643522</file_size>
            <label>DICOM</label>
            <xnat_abstractresource_id>50</xnat_abstractresource_id>
            <xnat_imagescandata_xnat_imagescandata_id>50</xnat_imagescandata_xnat_imagescandata_id>
            <abstractresource_info_abstractresource_meta_data>
                <XFTItem name="xnat:abstractResource_meta_data">
                    <activation_date>Thu Apr 21 14:10:24 CEST 2016</activation_date>
                    <activation_user_xdat_user_id>3</activation_user_xdat_user_id>
                    <insert_date>Thu Apr 21 14:10:24 CEST 2016</insert_date>
                    <insert_user_xdat_user_id>3</insert_user_xdat_user_id>
                    <meta_data_id>50</meta_data_id>
                    <modified>0</modified>
                    <row_last_modified>Thu Apr 21 14:10:24 CEST 2016</row_last_modified>
                    <shareable>1</shareable>
                    <status>active</status>
                    <xft_version>884</xft_version>
                </XFTItem>
                      ...

When I click prearchive/Rebuild, after a while the status changes to Ready. Then, clicking Archive returns the status to Error and the same URI error show again. I have tried several types of DICOM files and checked them beforehand using the DICOM browser. I deleted all subjects and created them again, it still won't work, even using the solution from this post. What can still be wrong, you have a clue?

Thanks in advance,

Leo
Auto Generated Inline Image 1
Auto Generated Inline Image 2

Herrick, Rick

unread,
Apr 21, 2016, 9:58:32 AM4/21/16
to xnat_di...@googlegroups.com
Hi Leo,

In the error message that starts, "ERROR org.nrg.xft.db.DBAction - Error saving item”, is there any stack trace information after the XML display? At some point down the log, you should see “</XFTItem>”. After that there may be some stuff that looks like: "  at org.nrg.xdat.db.DbAction:101” or something similar. You can also just send the full xdat.log if that’s easier.

-- 

Rick Herrick

Sr. Programmer/Analyst

Neuroinformatics Research Group

Washington University School of Medicine

(314) 740-5961


From: "xnat_di...@googlegroups.com" <xnat_di...@googlegroups.com> on behalf of leo wolf <leo.l...@gmail.com>
Reply-To: "xnat_di...@googlegroups.com" <xnat_di...@googlegroups.com>
Date: Thursday, April 21, 2016 at 7:24 AM
To: "xnat_di...@googlegroups.com" <xnat_di...@googlegroups.com>
Subject: [XNAT Discussion] Re: Problems upload images XNAT 1.6.2.1

--
You received this message because you are subscribed to the Google Groups "xnat_discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to xnat_discussi...@googlegroups.com.
To post to this group, send email to xnat_di...@googlegroups.com.

 


The materials in this message are private and may contain Protected Healthcare Information or other information of a sensitive nature. If you are not the intended recipient, be advised that any unauthorized use, disclosure, copying or the taking of any action in reliance on the contents of this information is strictly prohibited. If you have received this email in error, please immediately notify the sender via telephone or return mail.

Auto Generated Inline Image 1
Auto Generated Inline Image 2

leo wolf

unread,
Apr 21, 2016, 10:39:14 AM4/21/16
to xnat_discussion
Hi Rick,

Thank you for the prompt reply. Attached you'll find the xdat.log.

Cheers,

Leo
...
xdat.log

Herrick, Rick

unread,
Apr 21, 2016, 10:58:10 AM4/21/16
to xnat_di...@googlegroups.com
It looks like you’re having trouble even prior to these issues archiving the sessions. Is there any actual data in the prearchive folders? It sort of looks like there’s not, which could lead to the weirdness you’re seeing. Have a look in the C:/Library/XNAT/prearchive and C:/Library/XNAT/archive folders and see what exists underneath them.

Also, it looks like there may be an issue with the applet configuration for your project:

2016-04-21 11:02:30,917 [http-bio-8084-exec-4] ERROR org.nrg.xnat.turbine.modules.screens.UploadApplet - Error processing applet parameters
java.io.EOFException: No content to map to Object due to end of input
at org.codehaus.jackson.map.ObjectMapper._initForReading(ObjectMapper.java:2437)
at org.codehaus.jackson.map.ObjectMapper._readMapAndClose(ObjectMapper.java:2389)
at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1595)
at org.nrg.xnat.turbine.modules.screens.UploadApplet.doBuildTemplate(UploadApplet.java:71)

That line in UploadApplet is trying to process the applet configuration. There’s definitely some kind of text in there, because just before that it tests whether the configuration is empty (see line 67 here: http://bit.ly/1SdxC9u). But when it tries to process it, something goes very wrong.

There’s a LOT of that at the start-up of the applet, which could be messing up how it’s starting up and thus how it’s transferring the data. 

It’s hard to say why it’s failing on the database saves. Unfortunately there’s no other info besides the XML of the objects it’s trying to persist. Later there are some errors like "URI references data outside of the archive”, but that makes sense at that point because it looks like the data it’s trying to reference had failed to save earlier.

The only immediate causes of this that I can think are the possible issues with the applet configuration messing up the applet config and causing it to fail on the upload and issues with permissions on the folders. Windows can be very weird about its permissions, so you have to be sure that the Tomcat user can write into those folders.
--
You received this message because you are subscribed to the Google Groups "xnat_discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to xnat_discussi...@googlegroups.com.
To post to this group, send email to xnat_di...@googlegroups.com.
Visit this group at https://groups.google.com/group/xnat_discussion.
For more options, visit https://groups.google.com/d/optout.

leo wolf

unread,
Apr 21, 2016, 11:46:14 AM4/21/16
to xnat_discussion
In the prearchive there is certainly data (and log files), from there it seems OK. In the archive there is nothing which is to be expected (because it's pre-archived):



Concerning access rights for Tomcat, that's something to investigate (and fix accordingly). On starting the upload applet every once in a while it blocks the browser and reloading/restarting is needed. Even if it doesn't it produces the error regarding applet parameters. So that's the problem, but what could be the solution?

Thanks again,

Leo
...
Auto Generated Inline Image 1

leo wolf

unread,
Apr 29, 2016, 9:16:29 AM4/29/16
to xnat_discussion
Hi Rick,

Your post from last year solved it. It had nothing to do after all with applet parameters but with expired certificates (shown in the Java console):

https://groups.google.com/forum/#!topic/xnat_discussion/Q762yeszN54


At last I'm able to archive DICOM files after replacing the set of jar files.

Regards,

Leo
Reply all
Reply to author
Forward
0 new messages