We help IT Professionals succeed at work.
Get Started

Java app fails saving to SMB share

Alexandre Takacs
on
182 Views
Last Modified: 2016-04-05
Hello

I am having an issue with a third party Java application running under Win10/64

The problem is that the app can't seem to be able to write into an SMB share (referenced as UNC or mapped to a drive letter).

It can save into the local drives(s) and, interestingly enough, it manages to create a file in the share but doesn't complete the write operation.

Looking into the generated logs I see:

2016-03-25 14:38:22,941 [Thread-2] DEBUG ch.dvbern.tax.common.presentation.cd.util.ImmediatelyCancelable - runner started
2016-03-25 14:38:23,104 [Thread-2] DEBUG ch.dvbern.tax.common.presentation.cd.util.ImmediatelyCancelable - runner terminated
2016-03-25 14:38:35,606 [main] DEBUG ch.dvbern.tax.common.presentation.common.util.TaxFileUtil - Opening tax file version 3
2016-03-25 14:38:35,645 [main] DEBUG ch.dvbern.tax.common.presentation.common.util.TaxFileUtil - Successfuly loaded 1307 model item(s) into memory
2016-03-25 14:38:35,692 [main] DEBUG ch.dvbern.tax.common.presentation.common.util.TaxFileUtil - Opening tax file version 3
2016-03-25 14:38:35,708 [main] DEBUG ch.dvbern.tax.common.presentation.common.util.TaxFileUtil - Successfuly loaded 1307 model item(s) into memory
2016-03-25 14:38:35,724 [main] INFO  ch.dvbern.tax.common.ejb.util.CDIHelper - CDI support level: FULL.
2016-03-25 14:38:35,974 [main] INFO  ch.dvbern.tax.ge.pp.repartition.RepartitionDataSourceHolder - Table REPARTITION initialized (update count: 219).
2016-03-25 14:38:35,989 [main] INFO  ch.dvbern.tax.ge.pp.repartition.RepartitionDataSourceHolder - Table REPARTITION_KEYS initialized (update count: 182).
2016-03-25 14:38:35,989 [main] INFO  ch.dvbern.tax.ge.pp.repartition.RepartitionDataSourceHolder - Populated repartition tables in 31 ms.
2016-03-25 14:38:36,442 [main] DEBUG ch.dvbern.tax.common.engine.Engine - dataModelKey validation took 0ms
2016-03-25 14:38:36,442 [main] DEBUG ch.dvbern.tax.common.engine.Engine - executing async update dmk=Deductions.DeductionsLPP.MontantEnfants updates left=7
2016-03-25 14:38:36,442 [main] DEBUG ch.dvbern.tax.common.engine.Engine - executing async update dmk=Deductions.DeductionsLPP.MontantConjoint updates left=6
2016-03-25 14:38:36,458 [main] DEBUG ch.dvbern.tax.common.engine.Engine - executing async update dmk=Deductions.DeductionsLPP.MontantContribuable updates left=5
2016-03-25 14:38:36,458 [main] DEBUG ch.dvbern.tax.common.engine.Engine - executing async update dmk=Deductions.AutresDeductions.DeductionPourChargeDeFamilleIFD updates left=4
2016-03-25 14:38:36,458 [main] DEBUG ch.dvbern.tax.common.engine.Engine - executing async update dmk=Deductions.AutresDeductions.DeductionPourChargeDeFamilleICC updates left=3
2016-03-25 14:38:36,458 [main] DEBUG ch.dvbern.tax.common.engine.Engine - executing async update dmk=Deductions.AutresDeductions.DeductionSurFortuneCommercInvestieConjoint updates left=2
2016-03-25 14:38:36,458 [main] DEBUG ch.dvbern.tax.common.engine.Engine - executing async update dmk=Deductions.AutresDeductions.DeductionSurFortuneCommercInvestieContribuable updates left=1
2016-03-25 14:39:36,824 [main] ERROR ch.dvbern.tax.common.presentation.cd.TaxmeController - Error saving fileAs
java.nio.file.ReadOnlyFileSystemException: null
	at com.sun.nio.zipfs.ZipFileSystem.checkWritable(ZipFileSystem.java:155) ~[zipfs.jar:1.8.0_60]
	at com.sun.nio.zipfs.ZipFileSystem.createDirectory(ZipFileSystem.java:416) ~[zipfs.jar:1.8.0_60]
	at com.sun.nio.zipfs.ZipPath.createDirectory(ZipPath.java:634) ~[zipfs.jar:1.8.0_60]
	at com.sun.nio.zipfs.ZipFileSystemProvider.createDirectory(ZipFileSystemProvider.java:201) ~[zipfs.jar:1.8.0_60]
	at java.nio.file.Files.createDirectory(Files.java:674) ~[na:1.8.0_60]
	at java.nio.file.Files.createAndCheckIsDirectory(Files.java:781) ~[na:1.8.0_60]
	at java.nio.file.Files.createDirectories(Files.java:727) ~[na:1.8.0_60]
	at ch.dvbern.tax.ge.pp.presentation.cd.GeDvbTaxCdSession$1.preVisitDirectory(GeDvbTaxCdSession.java:97) ~[getax-pp-cd.jar:na]
	at ch.dvbern.tax.ge.pp.presentation.cd.GeDvbTaxCdSession$1.preVisitDirectory(GeDvbTaxCdSession.java:94) ~[getax-pp-cd.jar:na]
	at java.nio.file.Files.walkFileTree(Files.java:2677) ~[na:1.8.0_60]
	at java.nio.file.Files.walkFileTree(Files.java:2742) ~[na:1.8.0_60]
	at ch.dvbern.tax.ge.pp.presentation.cd.GeDvbTaxCdSession.setFile(GeDvbTaxCdSession.java:94) ~[getax-pp-cd.jar:na]
	at ch.dvbern.tax.common.presentation.cd.TaxmeController.saveFileAs(TaxmeController.java:425) ~[dvbtax-common-cd-getax.jar:8.8.1]
	at ch.dvbern.tax.common.presentation.cd.action.menu.FileSaveAsAction.run(FileSaveAsAction.java:39) [dvbtax-common-cd-getax.jar:8.8.1]
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:519) [org.eclipse.jface.jar:na]
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595) [org.eclipse.jface.jar:na]
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511) [org.eclipse.jface.jar:na]
	at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420) [org.eclipse.jface.jar:na]
	at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source) [swt_32.jar:na]
	at org.eclipse.swt.widgets.Display.sendEvent(Unknown Source) [swt_32.jar:na]
	at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) [swt_32.jar:na]
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source) [swt_32.jar:na]
	at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source) [swt_32.jar:na]
	at ch.dvbern.tax.common.presentation.cd.TaxmeLauncher.launchApplication(TaxmeLauncher.java:277) [dvbtax-common-cd-getax.jar:8.8.1]
	at ch.dvbern.tax.common.presentation.cd.TaxmeLauncher.launchTaxme(TaxmeLauncher.java:135) [dvbtax-common-cd-getax.jar:8.8.1]
	at ch.dvbern.tax.ge.pp.presentation.cd.TaxmeGeLauncher.main(TaxmeGeLauncher.java:137) [getax-pp-cd.jar:na]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_60]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_60]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_60]
	at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_60]
	at ch.dvbern.lib.update.Launcher.launchApplication(Launcher.java:943) [dvbern-lib-update.jar:2.6.6]
	at ch.dvbern.lib.update.Launcher.main(Launcher.java:215) [dvbern-lib-update.jar:2.6.6]
2016-03-25 14:39:44,663 [Thread-3] DEBUG ch.dvbern.tax.common.presentation.cd.Autosave - Autosaving has been interrupted
2016-03-25 14:39:44,676 [Thread-1] DEBUG ch.dvbern.tax.common.presentation.cd.TaxmeLauncher - Shutting down weld

Open in new window


I have contacted the editor of the software (a tax declaration application) and their advise is to save to local drive and then copy paste to share... I'd like to get back to them with something more specific.

Any comment most welcome
Comment
Watch Question
CERTIFIED EXPERT
Distinguished Expert 2020
Commented:
This problem has been solved!
Unlock 1 Answer and 4 Comments.
See Answer
Why Experts Exchange?

Experts Exchange always has the answer, or at the least points me in the correct direction! It is like having another employee that is extremely experienced.

Jim Murphy
Programmer at Smart IT Solutions

When asked, what has been your best career decision?

Deciding to stick with EE.

Mohamed Asif
Technical Department Head

Being involved with EE helped me to grow personally and professionally.

Carl Webster
CTP, Sr Infrastructure Consultant
Ask ANY Question

Connect with Certified Experts to gain insight and support on specific technology challenges including:

  • Troubleshooting
  • Research
  • Professional Opinions
Did You Know?

We've partnered with two important charities to provide clean water and computer science education to those who need it most. READ MORE