AsciidocFX icon indicating copy to clipboard operation
AsciidocFX copied to clipboard

HTML preview and conversion fails in 1.7.0

Open carun opened this issue 5 years ago • 9 comments

OS: Windows 10 64 bit.

  1. Upgrade from 1.6.8 to 1.7.0
  2. Window pops up to choose the config settings from previous version.
  3. Click cancel to create new settings.
  4. Open any .ad file.
  5. HTML preview doesn't show and HTML conversion fails as well.

carun avatar Jul 15 '19 15:07 carun

Hi, is it reproducible?

rahmanusta avatar Jul 15 '19 20:07 rahmanusta

@rahmanusta Yes, it is reproducible on Windows 10. It works fine on MacOS though.

carun avatar Jul 15 '19 21:07 carun

Uninstalling and reinstalling 1.7.0 fixes this issue. This could be an issue with the upgrade from 1.6.8 to 1.7.0.

carun avatar Jul 15 '19 22:07 carun

I was able to reproduce this again with the same version. Here is the error log if that could help. Please let me know if you need more information.

ERROR => Problem occured while converting to HTML
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Task: 62027f75-bd55-40e7-8a66-30b6869203ba is not completed
	at com.kodedu.engine.AsciidocWebkitConverter.convert(AsciidocWebkitConverter.java:146)
	at com.kodedu.engine.AsciidocWebkitConverter.convertHtml(AsciidocWebkitConverter.java:188)
	at com.kodedu.service.convert.html.HtmlBookConverter.convert(HtmlBookConverter.java:68)
	at com.kodedu.controller.ApplicationController.lambda$generateHtml$9(ApplicationController.java:516)
	at com.kodedu.service.ThreadService$1.call(ThreadService.java:48)
	at javafx.graphics/javafx.concurrent.Task$TaskCallable.call(Task.java:1425)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1406)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Task: 62027f75-bd55-40e7-8a66-30b6869203ba is not completed
	at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:395)
	at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2093)
	at com.kodedu.engine.AsciidocWebkitConverter.convert(AsciidocWebkitConverter.java:144)
	... 12 common frames omitted
Caused by: java.lang.RuntimeException: Task: 62027f75-bd55-40e7-8a66-30b6869203ba is not completed
	at com.kodedu.controller.ApplicationController.lambda$completeWebWorkerExceptionally$171(ApplicationController.java:2304)
	at java.base/java.util.Optional.ifPresent(Optional.java:183)
	at com.kodedu.controller.ApplicationController.lambda$completeWebWorkerExceptionally$172(ApplicationController.java:2303)
	... 9 common frames omitted

carun avatar Jul 31 '19 06:07 carun

Do you reproduce it each time or randomly?

rahmanusta avatar Jul 31 '19 08:07 rahmanusta

@rahmanusta I'm able to reproduce this consistently.

  1. Reboot the Windows box
  2. Start AsciidocFx
  3. Open any .ad file.
  4. Click on HTML5 button on the preview to save HTML.
  5. Log message bar says: Problem occurred while converting to HTML.
  6. Click on Log button at the bottom bar. The exception is visible now.
  7. Click on PDF button on the preview to save PDF.
  8. Log message bar says: PDF conversion ended. The PDF file is available on the file system.

carun avatar Jul 31 '19 17:07 carun

I had the same issue, when I removed my previous settings from earlier versions the error went away.

swarwick avatar Nov 12 '19 13:11 swarwick

Tried reproducing this with AsciidocFx v1.7.4.

  1. Start AsciidocFX
  2. Create a simple ascii doc file
  3. Click on HTML5 button on the preview to save HTML.
  4. Log shows below image
  5. Add :stylesheet: default.css to the top of the doc and create an empty default.css as follows:
    = Release Notes
    Some stuff
    v1, 2021-04-27
    :stylesheet: default.css
    
  6. Click on HTML5 button on the preview to save HTML.
  7. HTML conversion will fail and the log window will show this error.
ERROR => UT005023: Exception handling request to /afx/worker/js/resource.afx
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalArgumentException: Illegal character in path at index 4: ./C:\Users\217216x715132\Code\Capture\CaptureService\docs/default.css
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:517)
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:269)
	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:78)
	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:133)
	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:130)
	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:249)
	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:78)
	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:99)
	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:841)
	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
	at java.base/java.lang.Thread.run(Thread.java:853)
Caused by: java.lang.IllegalArgumentException: Illegal character in path at index 4: ./C:\Users\217216x715132\Code\Capture\CaptureService\docs/default.css
	at java.base/java.net.URI.create(URI.java:906)
	at com.kodedu.helper.IOHelper.getPath(IOHelper.java:593)
	at com.kodedu.controller.WebWorkerResource.onrequest(WebWorkerResource.java:102)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:567)
	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197)
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1060)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:962)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
	... 50 common frames omitted
Caused by: java.net.URISyntaxException: Illegal character in path at index 4: ./C:\Users\217216x715132\Code\Capture\CaptureService\docs/default.css
	at java.base/java.net.URI$Parser.fail(URI.java:2966)
	at java.base/java.net.URI$Parser.checkChars(URI.java:3137)
	at java.base/java.net.URI$Parser.parseHierarchical(URI.java:3219)
	at java.base/java.net.URI$Parser.parse(URI.java:3178)
	at java.base/java.net.URI.<init>(URI.java:623)
	at java.base/java.net.URI.create(URI.java:904)
	... 65 common frames omitted

carun avatar Apr 28 '21 07:04 carun

Additional info on the issue: While using custom stylesheet, if we use :linkcss:, then the error goes away. Although now the stylesheets need to be moved along with the html doc.

Any solution to this yet?

sachman avatar May 15 '21 09:05 sachman