Tag: glassfish

是否可以在Glassfish 3上使用Java 8?

我们目前使用的是Glassfish 3,我真的想使用Java 8.我尝试升级到Glassfish 4,但我在Glassfish 4代码中遇到了两个错误,所以我不得不恢复到Glassfish 3. Glassfish 3是否适用于Java 8或将我必须升级我的应用程序容器?

我可以(以及如何)使用EJB模块中的javax.naming.Context#lookup查找CDI托管bean吗?

我可以(如果是这样,如何?)在EJB模块中使用javax.naming.Context#lookup查找CDI托管bean? 我正在使用GlassFish v3。 我想我可以使用@Named ,但是什么是CDI托管bean的JNDI名称? 我想从非托管POJO中查找它们,所以我不能使用@Inject 。

Glassfish 3.1默认主体到角色映射

我正在使用glassfish和jaas模块。 我以这种方式配置了我的web.xml。 ALL Page for admin /* user BASIC file Administrator user 这意味着所有想要访问我的Web应用程序的用户都需要是组用户。 然后在glassfish控制台上我需要勾选选项:Configuration – > server-config – > security – > Default Principal To Role Mapping 我的问题是为什么我需要将此默认主体勾选到角色映射? 以及如何更改我的web.xml以避免勾选它? 非常感谢 卢瓦克

带有FormDataContentDisposition的org.glassfish.jersey上传文件

http://www.mkyong.com/webservices/jax-rs/file-upload-example-in-jersey/我正在按照本指南操作并遇到问题。 我有一些疑问。 所有的依赖都必须对应吗? 我的项目有一些org.glassfish.jersey依赖项,本指南建议使用org.sun.jersey。 我是否必须使用与此相同的版本进行更改? org.glassfish.jersey.media jersey-media-multipart 2.16 org.glassfish.jersey.core jersey-server 2.16 我有这个错误 org.glassfish.jersey.server.model.ModelValidationException: Validation of the application resource model has failed during application initialization. [[FATAL] No injection source found for a parameter of type public ***.***.****.common.dto.response.AbstractResponse ***.***.****.m2m.instancetypeupload.webservice.InstanceTypeUploadWebService.upload(java.io.InputStream,org.glassfish.jersey.media.multipart.FormDataContentDisposition) at index 0.; source=’ResourceMethod{httpMethod=POST, consumedTypes=[multipart/form-data], producedTypes=[application/json], suspended=false, suspendTimeout=0, suspendTimeoutUnit=MILLISECONDS, invocable=Invocable{handler=ClassBasedMethodHandler{handlerClass=class ***.***.****.m2m.instancetypeupload.webservice.InstanceTypeUploadWebService, handlerConstructors=[org.glassfish.jersey.server.model.HandlerConstructor@90516e]}, definitionMethod=public ***.***.***.common.dto.response.AbstractResponse ***.***.*****.m2m.instancetypeupload.webservice.InstanceTypeUploadWebService.upload(java.io.InputStream,org.glassfish.jersey.media.multipart.FormDataContentDisposition), parameters=[Parameter [type=class java.io.InputStream, […]

可以使用@Resource在EJB3.0中注入原语吗?

使用Glassfish,我可以设置一个字符串jndi条目: JNDI名称:“com / xyzcompany / echo / EchoServiceBean / viewName” 工厂类:org.glassfish.resources.custom.factory.PrimitivesAndStringFactory 属性:value =“Testing123” 然后我可以将这个容器配置的字符串注入我的EJB: @Resource(lookup =“com / xyzcompany / echo / EchoServiceBean / viewName”) String viewName; lookup =似乎在内部执行InitialContext.lookup(…)。 但是,这使用ejb3.1,但不幸的是我的prod环境只有ejb3.0。 我想我想弄清楚是否有办法使用@Resource(name =)或@Resource(mappedName =)来做类似的事情? name =似乎是特定于应用程序的,所以我应该能够以某种方式将相对名称映射到全局JNDI名称,但我无法弄清楚映射的注释。 谢谢!

请求标头太大

我在日志中发现了几个IllegalStateExceptionexception: [#|2009-01-28T14:10:16.050+0100|SEVERE|sun-appserver2.1|javax.enterprise.system.container.web|_ThreadID=26;_ThreadName=httpSSLWorkerThread-80-53;_RequestID=871b8812-7bc5-4ed7-85f1-ea48f760b51e;|WEB0777: Unblocking keep-alive exception java.lang.IllegalStateException: PWC4662: Request header is too large at org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:740) at org.apache.coyote.http11.InternalInputBuffer.parseHeader(InternalInputBuffer.java:657) at org.apache.coyote.http11.InternalInputBuffer.parseHeaders(InternalInputBuffer.java:543) at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.parseRequest(DefaultProcessorTask.java:712) at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:577) at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:831) at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341) at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263) at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214) at com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask(PortUnificationPipeline.java:380) at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265) at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106) |#] 有人知道配置更改来解决这个问题吗?

如何为独立客户端设置Glassfish 3.1.2的JNDI?

我尝试从独立的swing客户端(在客户端计算机上的单独JVM中运行)连接到Glassfish服务器。 我目前使用Netbeans的以下设置,一切正常: System.setProperty(“java.naming.factory.initial”, “com.sun.enterprise.naming.SerialInitContextFactory”); System.setProperty(“java.naming.factory.url.pkgs”, “com.sun.enterprise.naming”); System.setProperty(“java.naming.factory.state”, “com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl”); System.setProperty(“org.omg.CORBA.ORBInitialHost”, “192.168.1.3”); System.setProperty(“org.omg.CORBA.ORBInitialPort”, “3700”); InitialContext context = new InitialContext(); 但是当我尝试通过键入“java -jar client.jar”从控制台启动编译的客户端时,我收到以下错误: D:\workspace\gf-client\dist>java -jar gf-client.jar 17.08.2012 11:07:38 ch.client.core.ServerContext getInitialContext SCHWERWIEGEND: Cannot instantiate class: com.sun.enterprise.naming.SerialInitContextFactory javax.naming.NoInitialContextException: Cannot instantiate class: com.sun.enterprise.naming.SerialInitContextFactory [Root exception is java.lang.ClassNotFoundException: com.sun.enterprise.naming.SerialInitContextFactory] at javax.naming.spi.NamingManager.getInitialContext(Unknown Source) at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source) at javax.naming.InitialContext.init(Unknown Source) at javax.naming.InitialContext.(Unknown Source) at […]

如何在GlassFish 2上保护网络服务?

我们在GlassFish 2服务器上部署了一些不透明的EJB(EJB3),它们通过@Webmethod注释将它们的一些方法公开为webservices。 现在我们想要保护这些Web服务方法,以便只有经过身份validation的客户端才能调用它。 实现这一目标的好方法是什么?

GlassFish JDBC领域组成员

我一直忙于在GlassFish 3.1上设置身份validation,特别是JDBC领域。 我一直在假设: “用户”表包含登录名(“email_address”)和密码(“密码”) “组”表包含组名列表(“名称”) “User_Group”表与用户和组匹配。 我无处可配置“User_Group”表,但是我想知道服务器如何能够将用户与组匹配。 不用说它不起作用。 然而,仔细检查表明: “用户”表包含登录名(“email_address”)和密码(“密码”) “组”表包含登录名(“email_address”) 作为主键 ,以及以逗号分隔的组名列表(“Administrator,User”)在一列中(“组”) 这是正确的,如果是这样,为什么要经历创建单独的“组”表的麻烦? 由于看起来每个登录只能有一个组列表(“email_address”),只是简单地将一个名为“组”的列添加到“用户”表并完全丢弃“组”表就不那么容易了吗? 谢谢!

如何将Portlet部署到Liferay?

我在尝试将新portlet安装到在Glassfish域上运行的Liferay时遇到了问题。 我最近想出了这个流程,并希望与其他人分享。 所以,请阅读答案,希望这有助于某人:) (问题的先决条件是我知道在Glassfish上运行的项目是使用autodeploy文件夹完成的,但是在Liferay上显示它们是另一个故事。)