首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Payara Server 5不在macOS/Windows上由控制台启动

Payara Server 5不在macOS/Windows上由控制台启动
EN

Stack Overflow用户
提问于 2020-09-01 17:11:15
回答 1查看 2.1K关注 0票数 0

macOS,中,我试图在Netbeans 12中使用Payara Server,我得到了:

代码语言:javascript
运行
复制
Launching Payara Server on Felix platform
INFO: Create bundle provisioner class = class com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner.
Registered com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishRuntime@462c1ddf in service registry.
#!## LogManagerService.postConstruct : rootFolder=/Users/joseluisbz/Documentos/Java/payara5-2020-4/glassfish
#!## LogManagerService.postConstruct : templateDir=/Users/joseluisbz/Documentos/Java/payara5-2020-4/glassfish/lib/templates
#!## LogManagerService.postConstruct : src=/Users/joseluisbz/Documentos/Java/payara5-2020-4/glassfish/lib/templates/logging.properties
#!## LogManagerService.postConstruct : dest=/Users/joseluisbz/Documentos/Java/payara5-2020-4/glassfish/domains/domain1/config/logging.properties
  Running Payara Version: Payara Server  5.2020.4 #badassfish (build 817)|#]
  Server log file is using Formatter class: com.sun.enterprise.server.logging.ODLLogFormatter|#]
  HV000001: Hibernate Validator 6.1.2.Final|#]
  [192.168.0.11]:4900 [development] [3.12.6] Connection[id=1, /192.168.0.11:49587->/192.168.0.11:5900, qualifier=null, endpoint=[192.168.0.11]:5900, alive=false, type=NONE] closed. Reason: Exception in Connection[id=1, /192.168.0.11:49587->/192.168.0.11:5900, qualifier=null, endpoint=[192.168.0.11]:5900, alive=true, type=NONE], thread=hz._hzInstance_1_development.IO.thread-in-0
java.lang.IllegalStateException: Unknown protocol: RFB
    at com.hazelcast.nio.tcp.UnifiedProtocolDecoder.onRead(UnifiedProtocolDecoder.java:107)
    at com.hazelcast.internal.networking.nio.NioInboundPipeline.process(NioInboundPipeline.java:135)
    at com.hazelcast.internal.networking.nio.NioThread.processSelectionKey(NioThread.java:369)
    at com.hazelcast.internal.networking.nio.NioThread.processSelectionKeys(NioThread.java:354)
    at com.hazelcast.internal.networking.nio.NioThread.selectLoop(NioThread.java:280)
    at com.hazelcast.internal.networking.nio.NioThread.run(NioThread.java:235)
|#]

然后通过控制台,这里是我的位置(我将payara5目录重命名为payara5-2020-4)。

代码语言:javascript
运行
复制
% pwd
.../payara5-2020-4/glassfish/bin
%

为了解决第一个问题:

代码语言:javascript
运行
复制
% ./asadmin set-hazelcast-configuration --enabled=false
Remote server does not listen for requests on [localhost:4848]. Is the server up?
No such local command: set-hazelcast-configuration.  Unable to access the server to execute the command remotely.  Verify the server is available.
Command set-hazelcast-configuration failed.
%

在我试图站起来之后..。

代码语言:javascript
运行
复制
% ./asadmin start-domain domain1
Waiting for domain1 to start ..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
No response from the Domain Administration Server (domain1) after 600 seconds.
The command is either taking too long to complete or the server has failed.
Please see the server log files for command status.  
Please start with the --verbose option in order to see early messages.
Command start-domain failed.
%

然后,我试着详细选择(比如推荐).

代码语言:javascript
运行
复制
% ./asadmin start-domain domain1  --verbose
Command start-domain only accepts one operand
...

% ./asadmin --verbose start-domain domain1
Invalid option: --verbose
...

% ./asadmin -v start-domain domain1       
Invalid option: -v
...

% ./asadmin start-domain domain1  -v       
Command start-domain only accepts one operand
...

公共信息

代码语言:javascript
运行
复制
Usage: asadmin [asadmin-utility-options] start-domain
    [-v|--verbose[=<verbose(default:false)>]]
    [--upgrade[=<upgrade(default:false)>]]
    [-w|--watchdog[=<watchdog(default:false)>]]
    [-d|--debug[=<debug(default:false)>]]
    [-n|--dry-run[=<dry-run(default:false)>]]
    [--drop-interrupted-commands[=<drop-interrupted-commands(default:false)>]]
    [--prebootcommandfile <prebootcommandfile>]
    [--postbootcommandfile <postbootcommandfile>] [--domaindir <domaindir>]
    [-?|--help[=<help(default:false)>]] [domain_name]

可悲的是,我坚信Payara是不成熟的产品。

但是,我如何解决所有这些错误/错误呢?

编辑:

我在Windows 10 PRO上用Netbeans 12进行测试

代码语言:javascript
运行
复制
Launching Payara Server on Felix platform
INFO: Create bundle provisioner class = class com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner.
Registered com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishRuntime@586f5c68 in service registry.
Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.sun.enterprise.glassfish.bootstrap.GlassFishMain.main(GlassFishMain.java:109)
    at com.sun.enterprise.glassfish.bootstrap.ASMain.main(ASMain.java:54)
Caused by: A MultiException has 2 exceptions.  They are:
1. com.sun.enterprise.module.ResolveError: Failed to start OSGiModuleImpl:: Bundle = [fish.payara.server.internal.batch.glassfish-batch-connector [102]], State = [NEW]
2. java.lang.IllegalStateException: Could not load descriptor SystemDescriptor(
    implementation=org.glassfish.batch.spi.impl.BatchRuntimeConfigurationInjector
    name=batch-runtime-configuration
    contracts={org.glassfish.batch.spi.impl.BatchRuntimeConfigurationInjector,org.jvnet.hk2.config.ConfigInjector}
    scope=javax.inject.Singleton
    qualifiers={org.jvnet.hk2.config.InjectionTarget}
    descriptorType=CLASS
    descriptorVisibility=NORMAL
    metadata=@table-suffix={optional,default\:,datatype\:java.lang.String,leaf},@data-source-lookup-name={optional,datatype\:java.lang.String,leaf},@table-prefix={optional,default\:,datatype\:java.lang.String,leaf},@schema-name={optional,default\:APP,datatype\:java.lang.String,leaf},@executor-service-lookup-name={optional,default\:concurrent/__defaultManagedExecutorService,datatype\:java.lang.String,leaf},target={org.glassfish.batch.spi.impl.BatchRuntimeConfiguration},Bundle-SymbolicName={fish.payara.server.internal.batch.glassfish-batch-connector},Bundle-Version={5.2020.4}
    rank=0
    loader=OsgiPopulatorPostProcessor.HK2Loader(OSGiModuleImpl:: Bundle = [fish.payara.server.internal.batch.glassfish-batch-connector [102]], State = [NEW],1228963996)
    proxiable=null
    proxyForSameScope=null
    analysisName=null
    id=170
    locatorId=0
    identityHashCode=373437697
    reified=false)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.loadClass(ServiceLocatorImpl.java:2247)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.reifyDescriptor(ServiceLocatorImpl.java:438)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.reifyDescriptor(ServiceLocatorImpl.java:457)
    at org.jvnet.hk2.config.DomDocument$InjectionTargetFilter.matches(DomDocument.java:184)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getDescriptors(ServiceLocatorImpl.java:347)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getDescriptors(ServiceLocatorImpl.java:389)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getBestDescriptor(ServiceLocatorImpl.java:397)
    at org.jvnet.hk2.config.DomDocument.buildModel(DomDocument.java:135)
    at org.jvnet.hk2.config.ConfigModel.parseValue(ConfigModel.java:959)
    at org.jvnet.hk2.config.ConfigModel.<init>(ConfigModel.java:875)
    at org.jvnet.hk2.config.DomDocument.buildModel(DomDocument.java:114)
    at org.jvnet.hk2.config.DomDocument.getModelByElementName(DomDocument.java:162)
    at org.jvnet.hk2.config.ConfigParser.handleElement(ConfigParser.java:165)
    at org.jvnet.hk2.config.ConfigParser.parse(ConfigParser.java:101)
    at org.jvnet.hk2.config.ConfigParser.parse(ConfigParser.java:95)
    at org.glassfish.config.support.DomainXml.parseDomainXml(DomainXml.java:271)
    at org.glassfish.config.support.DomainXml.run(DomainXml.java:121)
    at org.jvnet.hk2.config.ConfigurationPopulator.populateConfig(ConfigurationPopulator.java:58)
    at org.glassfish.hk2.bootstrap.HK2Populator.populateConfig(HK2Populator.java:83)
    at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.populateConfig(AbstractModulesRegistryImpl.java:190)
    at com.sun.enterprise.module.bootstrap.Main.createServiceLocator(Main.java:249)
    at org.jvnet.hk2.osgiadapter.HK2Main.createServiceLocator(HK2Main.java:95)
    at com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishRuntime.newGlassFish(EmbeddedOSGiGlassFishRuntime.java:95)
    at com.sun.enterprise.glassfish.bootstrap.GlassFishRuntimeDecorator.newGlassFish(GlassFishRuntimeDecorator.java:68)
    at com.sun.enterprise.glassfish.bootstrap.osgi.OSGiGlassFishRuntime.newGlassFish(OSGiGlassFishRuntime.java:91)
    at com.sun.enterprise.glassfish.bootstrap.GlassFishMain$Launcher.launch(GlassFishMain.java:125)
    ... 6 more
Caused by: com.sun.enterprise.module.ResolveError: Failed to start OSGiModuleImpl:: Bundle = [fish.payara.server.internal.batch.glassfish-batch-connector [102]], State = [NEW]
    at org.jvnet.hk2.osgiadapter.OSGiModuleImpl.start(OSGiModuleImpl.java:193)
    at org.jvnet.hk2.osgiadapter.OsgiPopulatorPostProcessor$1.loadClass(OsgiPopulatorPostProcessor.java:54)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.loadClass(ServiceLocatorImpl.java:2239)
    ... 31 more
Caused by: org.osgi.framework.BundleException: Unable to resolve fish.payara.server.internal.batch.glassfish-batch-connector [102](R 102.0): missing requirement [fish.payara.server.internal.batch.glassfish-batch-connector [102](R 102.0)] osgi.wiring.package; (osgi.wiring.package=com.ibm.jbatch.spi) [caused by: Unable to resolve fish.payara.server.internal.batch.payara-jbatch [311](R 311.0): missing requirement [fish.payara.server.internal.batch.payara-jbatch [311](R 311.0)] osgi.wiring.package; (osgi.wiring.package=org.glassfish.weld) [caused by: Unable to resolve fish.payara.server.internal.web.weld-integration [372](R 372.0): missing requirement [fish.payara.server.internal.web.weld-integration [372](R 372.0)] osgi.wiring.package; (&(osgi.wiring.package=org.glassfish.web.deployment.descriptor)(version>=5.2020.0)(!(version>=6.0.0))) [caused by: Unable to resolve fish.payara.server.internal.web.glue [360](R 360.0): missing requirement [fish.payara.server.internal.web.glue [360](R 360.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.catalina)(version>=5.2020.0)(!(version>=6.0.0))) [caused by: Unable to resolve fish.payara.server.internal.web.core [358](R 358.0): missing requirement [fish.payara.server.internal.web.core [358](R 358.0)] osgi.wiring.package; (&(osgi.wiring.package=org.glassfish.web.loader)(version>=5.2020.0)(!(version>=6.0.0)))]]]] Unresolved requirements: [[fish.payara.server.internal.batch.glassfish-batch-connector [102](R 102.0)] osgi.wiring.package; (osgi.wiring.package=com.ibm.jbatch.spi)]
    at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4368)
    at org.apache.felix.framework.Felix.startBundle(Felix.java:2281)
    at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998)
    at org.jvnet.hk2.osgiadapter.OSGiModuleImpl.startBundle(OSGiModuleImpl.java:227)
    at org.jvnet.hk2.osgiadapter.OSGiModuleImpl.start(OSGiModuleImpl.java:185)
    ... 33 more
Completed shutdown of GlassFish runtime
We are in non-embedded mode, so fish.payara.server.internal.core.glassfish [113] has nothing to do.
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-02 09:07:17

“未知协议: RFB”错误来自Hazelcast组件,该组件试图发现可能运行在端口5900上的其他集群实例。在一些操作系统中,通常是在Mac上,这个端口被VNC (远程桌面)占用,它以一种意想不到的方式响应Payara Server。

在Payara知识库中为Payara企业用户提供了一个解决方案。我可以使用它,并将从这里复制相关的部分。

有各种可能的解决办法:

  • 停止占用端口5900的进程(例如,默认使用该端口的VNC )。或者,您可以更改它的端口。然后,贝拉拉服务器应该启动OK.
  • 将Payara服务器配置为为Hazelcast使用不同的端口。如果您按照上述解决方案运行Payara,则可以运行命令:asadmin set-hazelcast-configuration --startport=5901.
  • Directly编辑目录glassfish/domains/domain1/config中的domain.xml并将端口5900更改为其他端口。然后像往常一样运行Payara。
  • 或在启动时更改Payara的Hazelcast端口。首先,创建一个带有一行config.txt的文本文件set-hazelcast-configuration --startport=5901。然后用asdamin start-domain --postbootcommandfile config.txt启动Payara服务器。关于这一点的更多信息,请参阅文档:https://docs.payara.fish/community/docs/5.2020.4/documentation/payara-micro/asadmin/pre-and-post-boot-scripts.html
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63692422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档