Tôi đang chạy máy chủ tin nhắn activemq được nhúng trong ứng dụng của tôi trên openshift. Theo số this, bạn chỉ có thể liên kết trên 15000 - 35530
. Tôi đã thử làm như sau, nhưng nó ném một lỗi nghiêm trọng. Điều gì có thể là vấn đề?Không thể liên kết với một cổng trên Openshift
Tôi đang sử dụng spring. Đây là một phần trong tôi applicationContext.xml
<amq:broker brokerName="tentacle-broker" start="true">
<amq:persistenceAdapter>
<amq:amqPersistenceAdapter directory="/var/lib/openshift/username/jbossews-2.0/jbossews-2.0/activemq2" maxFileLength="32mb"/>
</amq:persistenceAdapter>
<amq:transportConnectors>
<amq:transportConnector uri="tcp://127.10.180.129:15001"/>
</amq:transportConnectors>
</amq:broker>
Đây là lỗi mà tôi đang gặp
WARNING: could not generate unique stub
java.net.BindException: Permission denied
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
at java.net.ServerSocket.bind(ServerSocket.java:376)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at java.net.ServerSocket.<init>(ServerSocket.java:128)
at org.apache.activemq.util.IdGenerator.<clinit>(IdGenerator.java:54)
at org.apache.activemq.broker.region.RegionBroker.<clinit>(RegionBroker.java:81)
at org.apache.activemq.broker.BrokerService.createRegionBroker(BrokerService.java:1830)
at org.apache.activemq.broker.BrokerService.createRegionBroker(BrokerService.java:1824)
at org.apache.activemq.broker.BrokerService.createBroker(BrokerService.java:1781)
at org.apache.activemq.broker.BrokerService.getBroker(BrokerService.java:766)
at org.apache.activemq.broker.BrokerService.start(BrokerService.java:497)
at org.apache.activemq.broker.BrokerService.autoStart(BrokerService.java:463)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProces
r.java:293)
va:130)
ava:394)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1405)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:563)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:872)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:423)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4791)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:618)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:963)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1600)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
:
Cổng có thể đang được sử dụng, người dùng bạn sử dụng để thực thi OpenShift không có đủ đặc quyền để mở cổng mới hoặc có một ứng dụng khác chặn bạn mở cổng. –
@LuiggiMendoza Theo tài liệu Openshift, tôi tự do ràng buộc trên cổng đó trong ứng dụng của tôi. Không có ràng buộc nào khác trên cổng '15001'. Tôi vẫn còn bối rối vì sao nó không được phép. –
Một lần nữa, đây không phải là một vấn đề OpenShift, nó là một vấn đề người dùng/ứng dụng bên ngoài chặn OpenShift để mở một cổng mới. Ví dụ, một tường lửa có thể chặn ứng dụng của bạn để ràng buộc một cổng mới vì mục đích bảo mật. Bằng cách biết điều này, vấn đề của bạn thậm chí không liên quan trực tiếp đến lập trình. –