running-elephant / datart

Datart is a next generation Data Visualization Open Platform
https://running-elephant.github.io/datart-docs/
Apache License 2.0
1.99k stars 591 forks source link

截图功能报错unknown error: net::ERR_CONNECTION_REFUSED #2335

Open Lwl164912 opened 4 months ago

Lwl164912 commented 4 months ago

Datart版本号 2.0版本

错误描述 可视化模块点击导出pdf时报错 unknown error: net::ERR_CONNECTION_REFUSED

如何重现 创建数据源时,创建可视化导出pdf报错

期望结果 想知道这个错误应该更改哪里?

截图 image

运行环境详情:(可选,取决于错误发生的具体位置) 前端使用nginx打包部署的连接的本地8080后端服务器,后端本地debug运行方式,按照说明在远程服务器192.168.1.31:4444上使用docker部署的(docker run -p 4444:4444 -d --name selenium-chrome --shm-size="2g" selenium/standalone-chrome)
window10 1.8jdk pg数据库(自改国产化,目前没有数据库类型报错) 谷歌版本 128.0.6559.0(正式版本) (64 位)

image

这是本地服务的配置 我自己简单做了一个小demo 可以截图并保存到本地 但是使用系统截图报错 错误如下: 2024-07-11 16:47:28.695 INFO org.postgresql.core.v3.ConnectionFactoryImpl : [10.8.0.154:62167/192.168.1.190:5432] Connection is established. ID: 48889a72-f90e-4856-ad4c-f97092dc0b75 2024-07-11 16:47:28.742 INFO org.postgresql.core.v3.ConnectionFactoryImpl : Connect complete. ID: 48889a72-f90e-4856-ad4c-f97092dc0b75 2024-07-11 16:48:16.445 INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet' 2024-07-11 16:48:16.445 INFO org.springframework.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' 2024-07-11 16:48:16.446 INFO org.springframework.web.servlet.DispatcherServlet : Completed initialization in 1 ms 2024-07-11 16:48:16.808 INFO o.a.s.session.mgt.AbstractValidatingSessionManager : Enabling session validation scheduler... 2024-07-11 16:48:16.938 INFO org.postgresql.core.v3.ConnectionFactoryImpl : [87a60fd0-139c-41b0-9fab-ac04a26d3edb] Try to connect. IP: 192.168.1.190:5432 2024-07-11 16:48:16.982 INFO org.postgresql.core.v3.ConnectionFactoryImpl : [10.8.0.154:62224/192.168.1.190:5432] Connection is established. ID: 87a60fd0-139c-41b0-9fab-ac04a26d3edb 2024-07-11 16:48:17.012 INFO org.postgresql.core.v3.ConnectionFactoryImpl : Connect complete. ID: 87a60fd0-139c-41b0-9fab-ac04a26d3edb 2024-07-11 16:48:17.525 WARN org.apache.ibatis.io.SerialFilterChecker : As you are using functionality that deserializes object streams, it is recommended to define the JEP-290 serial filter. Please refer to https://docs.oracle.com/pls/topic/lookup?ctx=javase15&id=GUID-8296D8E8-2B93-4B9A-856E-0A65AF9B8C66 2024-07-11 16:48:17.723 INFO d.data.provider.jdbc.DataSourceFactoryDruidImpl : druid data source created (DataSource-556157059) 2024-07-11 16:48:18.097 INFO com.alibaba.druid.pool.DruidDataSource : {dataSource-2} inited 2024-07-11 16:48:21.619 INFO d.server.service.impl.AttachmentImageServiceImpl : created share url: http://127.0.0.1:3002/shareChart/bbd749a35ec841d0b12c19cb0b504006?eager=true&type=NONE 2024-07-11 16:48:22.420 INFO org.openqa.selenium.remote.ProtocolHandshake : Detected dialect: W3C 2024-07-11 16:48:25.131 ERROR datart.server.service.impl.DownloadServiceImpl : Download Task execute error datart.core.base.exception.BaseException: org.openqa.selenium.WebDriverException: unknown error: net::ERR_CONNECTION_REFUSED (Session info: chrome-headless-shell=126.0.6478.114) Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03' System info: host: 'USER-20240305CZ', ip: '10.8.0.154', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_181' Driver info: org.openqa.selenium.remote.RemoteWebDriver Capabilities {acceptInsecureCerts: false, browserName: chrome-headless-shell, browserVersion: 126.0.6478.114, chrome: {chromedriverVersion: 126.0.6478.63 (df799988fdc9..., userDataDir: /tmp/.org.chromium.Chromium...}, fedcm:accounts: true, goog:chromeOptions: {debuggerAddress: localhost:44352}, javascriptEnabled: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: LINUX, platformName: LINUX, proxy: Proxy(), se:bidiEnabled: false, se:cdp: ws://172.17.0.8:4444/sessio..., se:cdpVersion: 126.0.6478.114, se:vnc: ws://172.17.0.8:4444/sessio..., se:vncEnabled: true, se:vncLocalAddress: ws://172.17.0.8:7900, setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify, webauthn:extension:credBlob: true, webauthn:extension:largeBlob: true, webauthn:extension:minPinLength: true, webauthn:extension:prf: true, webauthn:virtualAuthenticators: true} Session ID: 854448dc97aad989285d1fc5dc5bbb8d at datart.core.base.exception.Exceptions.e(Exceptions.java:44) at datart.core.common.WebUtils.screenShot(WebUtils.java:94) at datart.core.common.WebUtils.screenShot2File(WebUtils.java:103) at datart.server.service.impl.AttachmentImageServiceImpl.getFile(AttachmentImageServiceImpl.java:59) at datart.server.service.impl.DownloadServiceImpl.lambda$submitDownloadTask$0(DownloadServiceImpl.java:95) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266) at java.util.concurrent.FutureTask.run(FutureTask.java) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: org.openqa.selenium.WebDriverException: unknown error: net::ERR_CONNECTION_REFUSED (Session info: chrome-headless-shell=126.0.6478.114) Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03' System info: host: 'USER-20240305CZ', ip: '10.8.0.154', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_181' Driver info: org.openqa.selenium.remote.RemoteWebDriver Capabilities {acceptInsecureCerts: false, browserName: chrome-headless-shell, browserVersion: 126.0.6478.114, chrome: {chromedriverVersion: 126.0.6478.63 (df799988fdc9..., userDataDir: /tmp/.org.chromium.Chromium...}, fedcm:accounts: true, goog:chromeOptions: {debuggerAddress: localhost:44352}, javascriptEnabled: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: LINUX, platformName: LINUX, proxy: Proxy(), se:bidiEnabled: false, se:cdp: ws://172.17.0.8:4444/sessio..., se:cdpVersion: 126.0.6478.114, se:vnc: ws://172.17.0.8:4444/sessio..., se:vncEnabled: true, se:vncLocalAddress: ws://172.17.0.8:7900, setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify, webauthn:extension:credBlob: true, webauthn:extension:largeBlob: true, webauthn:extension:minPinLength: true, webauthn:extension:prf: true, webauthn:virtualAuthenticators: true} Session ID: 854448dc97aad989285d1fc5dc5bbb8d at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.openqa.selenium.remote.http.W3CHttpResponseCodec.createException(W3CHttpResponseCodec.java:187) at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:122) at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:49) at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552) at org.openqa.selenium.remote.RemoteWebDriver.get(RemoteWebDriver.java:277) at datart.core.common.WebUtils.screenShot(WebUtils.java:65) ... 9 common frames omitted

其他内容

Lwl164912 commented 4 months ago

补充一下 前端端口号是3002 后端是8080

Swayingleaves commented 2 months ago

配置里再加一个这个配置试试 datart.server.address = http://127.0.0.1:8080 比如后端部署在192.168.11.11就配置为datart.server.address = http://192.168.11.11:8080