在Joget应用程序的“ 流程”选项卡中,在某些情况下(例如进程图更新),将会生成和更新进程的映像。在某些情况下可能无法生成图像。

下面的信息会长时间保持不变,否则如果生成失败,您可能会得到空白的图像。

 


图1:进程缩略图没有被生成

可能的问题1 - 在主文件夹上的权限访问

您可能需要对 /wflow主文件夹授予足够的读/写权限。

使用具有访问该文件夹权限的相同用户启动您的Joget服务器。

可能的问题2 - java.awt.headless错误

Caused by: java.awt.HeadlessException:
No X11 DISPLAY variable was set, but this program performed an operation which requires it.
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:207)
Caused by: java.awt.HeadlessException:
No X11 DISPLAY variable was set, but this program performed an operation which requires it.
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:159)
at java.awt.Window.<init>(Window.java:433)
at java.awt.Frame.<init>(Frame.java:403)
at java.awt.Frame.<init>(Frame.java:368)
at javax.swing.SwingUtilities$SharedOwnerFrame.<init>(SwingUtilities.java:1733)
at javax.swing.SwingUtilities.getSharedOwnerFrame(SwingUtilities.java:1810)
at javax.swing.JDialog.<init>(JDialog.java:253)
at javax.swing.JDialog.<init>(JDialog.java:187)
at javax.swing.JDialog.<init>(JDialog.java:160)

承载Joget的服务器可能没有完整的图形支持,因此,您可以尝试通过将以下参数添加到JAVA_OPTS下的启动脚本(即tomcat6.sh)中来以无头模式运行服务器。

-Djava.awt.headless=true

更多参考:

http://stackoverflow.com/questions/5576986/servlet-giving-error-java-lang-noclassdeffounderror

https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+got+java.awt.headless+problem

http://dev.joget.org/community/pages/viewpage.action?pageId=12976186

可能的问题3 - 域名/ DNS /路由问题

ERROR 04 Nov 2014 22:47:22 org.joget.workflow.util.XpdlImageUtil  - Error generating xpdl image [processDefId=ABC#7#WPIApplication]
java.net.ConnectException: Connection refused: connect

当正在生成进程缩略图时,将会进行http调用。
您将需要确保您能够从托管Joget本身的服务器ping /调用域本身。(例如,您的域名是gojoget.com - 您的服务器必须能够ping到gojoget.com

如果您遇到类似的问题,请尝试修改您的主机文件,以便重定向到本地主机。

 

Example:-

# ip<space>domain
  201.225.100.01 localhost

可能的问题4 - 过期的缓存过程映像

如果你已经尝试了上述解决方案,仍然无法正常工作,那么你可以尝试清除Joget主文件夹中的缓存图像(通常位于[USER]/wflow/app_xpdlImages)刷新浏览器页面,以便它会尝试再次生成新的缩略图

 

  • No labels