J2EE SDK Security Options?
I hope someone can advise here. Even better, I hope someone can point to some sample code. Fundamentally, all I want to do is log in to my web application.
The kicker is that I want the person that logs in to be propagated back to the application tier.
Simply put, Servlet containers have a security layer, and I can do this:
Principal p = httpServletRequest.getUserPrincipal();
and
if (httpServletRequest.isUserInRole("MYROLE") { ... }
On the EJB side I can do this in, say, a Session Bean:
Principal p = sessionContext.getCallerPrincipal();
and
if (sessionContext.isCallerInRole("MYROLE") { ... }
So, what do I need to do to enable Container managed security in a WAR so that both my Servlets and SessionBeans will get the same Principals when they call their respective methods?
On the surface you'd like to think this would be easy being all part of the happy integrated J2EE family, but it doesn't seem that way.
I'm looking specifically for the J2EE SDK, SJAS 8.2, as this appears very platform dependent.
There are 2 other ways you can login to Sun Java System Application Server
1) using system properties j2eelogin.name and j2eelogin.password
System.setProperty("j2eelogin.name", usr);
System.setProperty("j2eelogin.password", pwd);
2) sun-acc.xml (if you are running application client)
see the following URL for more details
http://docs.sun.com/source/817-6087/dgacc.html#wp1010634
I`m using the Sun Java System Application Server
Platform Edition 8 to develop some ejb. I`m connecting
from a remote client. I`ts all working just fine but
my client needs to be able to login an logout from the
server. One way to do this seems to be using
programmatic login as described here
http://docs.sun.com/source/817-6087/dgsecure.html#wp257
0 , but it doesnt seems to be an elegant solution.
Is there someone who can tell me how to get a
handle to the JAAS login context?
The security manager doesnt allow to instantiate one
(i`ve looked in the policy file). And if i use the
JAAS in the normal way I only get to implement the
CallbackHandler. It would have been all so nice if i
would just create a logincontext!
Similar Messages
-
Hi, I downloaded j2ee sdk 1.4 for Windows. Any application using java.util.logging causes errors in server.log. For example this JSP:
<%@page contentType="text/html"%>
<%@ page import="java.util.logging.*" %>
<%
Logger log = Logger.getLogger("test");
log.info("testing");
%>
causes this log:
java.lang.ClassNotFoundException: test.LogStrings
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1377)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1224)
at org.apache.jasper.servlet.JasperLoader$1.run(JasperLoader.java:186)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:184)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:120)
at java.util.ResourceBundle.loadBundle(ResourceBundle.java:1009)
at java.util.ResourceBundle.findBundle(ResourceBundle.java:884)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:711)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:661)
at java.util.logging.Logger.findResourceBundle(Logger.java:1254)
at java.util.logging.Logger.setupResourceInfo(Logger.java:1282)
at java.util.logging.Logger.getLogger(Logger.java:277)
at com.sun.enterprise.server.logging.BaseLogManager.doInitializeLogger(BaseLogManager.java:92)
at com.sun.enterprise.server.logging.BaseLogManager.addLogger(BaseLogManager.java:157)
at java.util.logging.Logger.getLogger(Logger.java:231)
at org.apache.jsp.testi_jsp._jspService(testi_jsp.java:45)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:320)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:284)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:306)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:200)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280)
at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:99)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:189)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:258)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:256)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:210)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:196)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:175)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceValve.java:134)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at com.sun.enterprise.security.web.SingleSignOn.invoke(SingleSignOn.java:272)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at com.sun.enterprise.web.VirtualServerValve.invoke(VirtualServerValve.java:209)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at com.sun.enterprise.web.VirtualServerMappingValve.invoke(VirtualServerMappingValve.java:166)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:974)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:207)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:648)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:498)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:575)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:649)
at java.lang.Thread.run(Thread.java:534)
java.lang.ClassNotFoundException: test.LogStrings_en
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1377)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1224)
at org.apache.jasper.servlet.JasperLoader$1.run(JasperLoader.java:186)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:184)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:120)
at java.util.ResourceBundle.loadBundle(ResourceBundle.java:1009)
at java.util.ResourceBundle.findBundle(ResourceBundle.java:884)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:730)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:661)
at java.util.logging.Logger.findResourceBundle(Logger.java:1254)
at java.util.logging.Logger.setupResourceInfo(Logger.java:1282)
at java.util.logging.Logger.getLogger(Logger.java:277)
at com.sun.enterprise.server.logging.BaseLogManager.doInitializeLogger(BaseLogManager.java:92)
at com.sun.enterprise.server.logging.BaseLogManager.addLogger(BaseLogManager.java:157)
at java.util.logging.Logger.getLogger(Logger.java:231)
at org.apache.jsp.testi_jsp._jspService(testi_jsp.java:45)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:320)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:284)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:306)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:200)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280)
at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:99)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:189)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:258)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:256)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:210)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:196)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:175)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceValve.java:134)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at com.sun.enterprise.security.web.SingleSignOn.invoke(SingleSignOn.java:272)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at com.sun.enterprise.web.VirtualServerValve.invoke(VirtualServerValve.java:209)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at com.sun.enterprise.web.VirtualServerMappingValve.invoke(VirtualServerMappingValve.java:166)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:974)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:207)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:648)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:498)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:575)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:649)
at java.lang.Thread.run(Thread.java:534)
java.lang.ClassNotFoundException: test.LogStrings_en_US
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1377)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1224)
at org.apache.jasper.servlet.JasperLoader$1.run(JasperLoader.java:186)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:184)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:120)
at java.util.ResourceBundle.loadBundle(ResourceBundle.java:1009)
at java.util.ResourceBundle.findBundle(ResourceBundle.java:884)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:730)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:661)
at java.util.logging.Logger.findResourceBundle(Logger.java:1254)
at java.util.logging.Logger.setupResourceInfo(Logger.java:1282)
at java.util.logging.Logger.getLogger(Logger.java:277)
at com.sun.enterprise.server.logging.BaseLogManager.doInitializeLogger(BaseLogManager.java:92)
at com.sun.enterprise.server.logging.BaseLogManager.addLogger(BaseLogManager.java:157)
at java.util.logging.Logger.getLogger(Logger.java:231)
at org.apache.jsp.testi_jsp._jspService(testi_jsp.java:45)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:320)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:284)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:306)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:200)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280)
at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:99)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:189)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:258)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:256)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:210)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:196)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:175)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceValve.java:134)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at com.sun.enterprise.security.web.SingleSignOn.invoke(SingleSignOn.java:272)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at com.sun.enterprise.web.VirtualServerValve.invoke(VirtualServerValve.java:209)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at com.sun.enterprise.web.VirtualServerMappingValve.invoke(VirtualServerMappingValve.java:166)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:974)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:207)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:648)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:498)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:575)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:649)
at java.lang.Thread.run(Thread.java:534)
[#|2004-03-16T14:55:23.576+0200|INFO|j2ee-appserver1.4|test|_ThreadID=11;|testing|#]
What's up with this LogStrings?? It seems this happens only with code that uses getLogger(name),
if I use getLogger(name, null) it works normally. First one works just fine in Sun ONE 7. Does the
appserver really create a resource bundle name from logger class name??!! Please tell me there is
some configuration option I can use to prevent these errors.
Thanks a lot if someone can reply,
odeThis is a Harmless and Annoying exception that will be logged eventhough it's handled appropriately. I believe this is fixed in the latest appserver release.Can you please download the latest release of AppServer and give it a try.
-
I was able to download neither J2EE SDK, even nor SDM(Sun Download Manager), suffering from the following error web page:
===========================================================
The page cannot be displayed
The page you are looking for is currently unavailable. The Web site might be experiencing technical difficulties, or you may need to adjust your browser settings.
Please try the following:
Click the Refresh button, or try again later.
If you typed the page address in the Address bar, make sure that it is spelled correctly.
To check your connection settings, click the Tools menu, and then click Internet Options. On the Connections tab, click Settings. The settings should match those provided by your local area network (LAN) administrator or Internet service provider (ISP).
See if your Internet connection settings are being detected. You can set Microsoft Windows to examine your network and automatically discover network connection settings (if your network administrator has enabled this setting).
Click the Tools menu, and then click Internet Options.
On the Connections tab, click LAN Settings.
Select Automatically detect settings, and then click OK.
Some sites require 128-bit connection security. Click the Help menu and then click About Internet Explorer to determine what strength security you have installed.
If you are trying to reach a secure site, make sure your Security settings can support it. Click the Tools menu, and then click Internet Options. On the Advanced tab, scroll to the Security section and check settings for SSL 2.0, SSL 3.0, TLS 1.0, PCT 1.0.
Click the Back button to try another link.
Cannot find server or DNS Error
Internet Explorer
==============================================================
The problem was still even after I had followed instructions on the error page and made the tuning on IE.Please try to download the file from another computer, or try in the next day, sometimes the server may be under maintenance
-
Error when running "J2ee SDK" - j2ee server
Hi,
When running: C:\j2sdkee1.3.1\bin>j2eeadmin I get the follwoing error:
Binding: < JMS Cnx Factory : TopicConnectionFactory ,
Binding: < JMS Cnx Factory : QueueConnectionFactory ,
Starting web service at port: 8000
Starting secure web service at port: 7000
J2EE SDK/1.3.1
LifecycleException: null.open: java.net.BindExcepti
JVM_Bind
at org.apache.catalina.connector.http.HttpCon
ctor.java:1116)
at org.apache.catalina.startup.Embedded.start
at com.sun.web.server.WebService.start(WebSer
at com.sun.web.server.WebServer.start(WebServ
at com.sun.enterprise.server.J2EEServer.start
796)
at com.sun.enterprise.server.J2EEServer.run(J
at com.sun.enterprise.server.J2EEServer.main(
java.lang.RuntimeException: null.open
at com.sun.enterprise.server.J2EEServer.run(J
at com.sun.enterprise.server.J2EEServer.main(
J2EE server reported the following error: null.open
Error executing J2EE server ...
Please advise.
Thanks,
Gabi405 errors in the HTTP cycle
Any client goes through the following cycle:
* Obtain an IP address from the IP name of your site (your site URL without the leading 'http://'). This lookup (conversion of IP name to IP address) is provided by domain name servers (DNSs).
* Open an IP socket connection to that IP address.
* Write an HTTP data stream through that socket.
* Receive an HTTP data stream back from your Web server in response. This data stream contains status codes whose values are determined by the HTTP protocol. Parse this data stream for status codes and other useful information.
This error occurs in the final step above when the client receives an HTTP status code that it recognises as '405'.
Resolving 405 errors - general
405 errors often arise with the POST method. You may be trying to introduce some kind of input form on your Web site, but not all ISPs allow the POST method necessary to process the form.
All 405 errors can be traced to configuration of the Web server and security governing access to the content of the Web site. -
I encountered a bug while using the deploytool to deploy
an EAR file to the Sun J2EE 1.3_01 server.
I submitted a bug report to Sun via the Sun Java Developer Connection.
(Sorry, it has not been assigned a BugID yet)
Question:
Does anybody know if the web container in Sun's
J2EE 1.3_01 server supports access to local enterprise beans?
Screenshots of the bug are available at
http://sync4j.sourceforge.net/deploymentbug/
Full details below....
-Sean
category: j2ee
subcategory: deployment
release: 1.3_01
hardware: x86
OSversion: windows_2000
synopsis: java.lang.ClassCastException thrown during deployment of Session bean
java -version
java version "1.3.1_01"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1_01)
Java HotSpot(TM) Client VM (build 1.3.1_01, mixed mode)
C:\j2sdkee1.3\bin>j2ee -version
Java 2 Enterprise Edition version 1.3_01, build 1.3_01-b01
I built a EJB 2.0 compliant stateful session bean.
The session bean has a remote interface (ISyncRemote),
a remote home interface (ISyncHomeRemote),
a local interface (ISyncLocal),
and a local home interface (ISyncHomeLocal).
I built an HTTP Servlet that is supposed to access
the Stateful Session Bean using ISyncHomeLocal and
ISyncLocal
I run "deploytool.bat" in GUI mode to perform the deployment.
During deployment, the deploytool GUI displays a message
box which states:
"There was a deployment error.
java.rmi.ServerException: RemoteException occurred in server thread;
nested exception is:
java.rmi.RemoteException: An error was encountered while loading
a web component.
Please refer to
<J2EE_HOME>/logs/<machine-name>/j2ee//j2ee/error.log
for more information. Please verify your Application with the
Verifier tool."
The "error.log" file did not contain any useful information.
I ran the J2EE "verifier.bat" tool to verify that my EAR archive is OK.
The Sun J2EE server output this error string:
"java.lang.ClassCastException:
com.sun.enterprise.deployment.EjbExternalDescriptor"
Here is the full output from the Sun J2EE server:
C:\j2sdkee1.3\bin>j2ee -verbose
J2EE server listen port: 1050
Naming service started:1050
Binding DataSource, name = jdbc/EstoreDB, url =
jdbc:cloudscape:rmi:CloudscapeDB;create=true
Binding DataSource, name = jdbc/Cloudscape, url =
jdbc:cloudscape:rmi:CloudscapeDB;create=true
Binding DataSource, name = jdbc/DB1, url =
jdbc:cloudscape:rmi:CloudscapeDB;create=true
Binding DataSource, name = jdbc/DB2, url =
jdbc:cloudscape:rmi:CloudscapeDB;create=true
Binding DataSource, name = jdbc/InventoryDB, url =
jdbc:cloudscape:rmi:CloudscapeDB;create=true
Binding DataSource, name = jdbc/XACloudscape, url = jdbc/XACloudscape__xa
Binding DataSource, name = jdbc/XACloudscape__xa, dataSource =
COM.cloudscape.core.RemoteXaDataSourc
e@245536
Starting JMS service...
Initialization complete - waiting for client requests
Binding: < JMS Destination : jms/Queue , javax.jms.Queue >
Binding: < JMS Destination : jms/Topic , javax.jms.Topic >
Binding: < JMS Cnx Factory : TopicConnectionFactory , Topic , No properties >
Binding: < JMS Cnx Factory : jms/TopicConnectionFactory , Topic , No properties
>
Binding: < JMS Cnx Factory : QueueConnectionFactory , Queue , No properties >
Binding: < JMS Cnx Factory : jms/QueueConnectionFactory , Queue , No properties
>
Starting web service at port: 8000
Starting secure web service at port: 7000
J2EE SDK/1.3
Starting web service at port: 9191
J2EE SDK/1.3
J2EE server startup complete.
Compiling c:\j2sdkee1.3\repository\rbi\gnrtrTMP\Sync4j Server enterprise
application\sync4j\server\s
yncbean\SyncBean_LocalHomeImpl.java ....
Compiling c:\j2sdkee1.3\repository\rbi\gnrtrTMP\Sync4j Server enterprise
application\sync4j\server\s
yncbean\SyncBean_EJBLocalObjectImpl.java ....
Compiling c:\j2sdkee1.3\repository\rbi\gnrtrTMP\Sync4j Server enterprise
application\sync4j\server\s
yncbean\SyncBean_RemoteHomeImpl.java ....
Compiling c:\j2sdkee1.3\repository\rbi\gnrtrTMP\Sync4j Server enterprise
application\sync4j\server\s
yncbean\SyncBean_EJBObjectImpl.java ....
rmic sync4j.server.syncbean.SyncBean_RemoteHomeImpl...
rmic sync4j.server.syncbean.SyncBean_EJBObjectImpl...
c:\j2sdkee1.3\repository\rbi\applications\Sync4j Server enterprise
application1004172068449Server.ja
r
Binding name:`java:comp/env/ejb/ISyncHomeRemote`
Binding name:`java:comp/env/ejb/ISyncHomeLocal`
java.lang.ClassCastException:
com.sun.enterprise.deployment.EjbExternalDescriptor
at com.sun.enterprise.deployment.EjbReferenceDescriptor.getValue
(EjbReferenceDescriptor.java
:202)
at com.sun.enterprise.naming.NamingManagerImpl.bindObjects
(NamingManagerImpl.java:394)
at com.sun.web.server.WebService.addContext(WebService.java:148)
at com.sun.web.server.ServletDeployerImpl.loadWebComponents
(ServletDeployerImpl.java:214)
at
com.sun.enterprise.tools.deployment.backend.JarInstallerImpl.deployWebComponent
s
(JarInsta
llerImpl.java:791)
at
com.sun.enterprise.tools.deployment.backend.JarInstallerImpl.deployApplication
(JarInstall
erImpl.java:219)
at
org.omg.stub.com.sun.enterprise.tools.deployment.backend._JarInstallerImpl_Tie.
invoke(Un
known Source)
at com.sun.corba.ee.internal.corba.ServerDelegate.dispatch
(ServerDelegate.java:355)
at com.sun.corba.ee.internal.iiop.ORB.process(ORB.java:273)
at com.sun.corba.ee.internal.iiop.RequestProcessor.process
(RequestProcessor.java:84)
at com.sun.corba.ee.internal.orbutil.ThreadPool$PooledThread.run
(ThreadPool.java:99)
Does the Sun J2EE server implementation support the invocation
of Session EJB's via a Local interface?
Does the Sun J2EE server implementation allow a Servlet to invoke
Session EJB's via the bean's Local interface?
While researching this issue, I read the J2EE 1.3 final specification.
The spec says:
"The EJB container is required to access to local enterprise beans.
We recommend that the web container also support access to local
enterprise beans."
Does the web container in Sun's J2EE server support access to local enterprise beans?I'm pretty much sure that you cannot access a
local Session bean from outside the EJB container.Please read the J2EE 1.3 specification before posting messages about EJB and J2EE.
According to the J2EE 1.3 specification:
"The EJB container is required to support access to local enterprise beans. We recommend that the web container also support access to local enterprise beans.
No support is provided for access to local enterprise beans from the application client container or the applet container."
If you use local interfaces for your session bean,
than your client must be local too. A local client is
a client that is collocated in the same JVM with the
session/entity that provides the local view and which
can be tightly coupled to the bean.My client is running in the same JVM as my EJB. The client is a servlet. The servlet is running in the same JVM as the EJB.
For what its worth, the error that I observed occurs during deployment. I haven't figured out why deployment is failing. -
Integrate j2ee sdk 1.4 with netbeans
Hi!
I'm working on a Win2k server with j2ee sdk 1.4. I've read taht you can integrate it with netbeans 3.6.
I don't want to work with the netbeans 3.6 integrated Tomcat 5 server, but with the one from Sun because of some requirements at work (We've been working with the j2ee sdk 1.4 for a while and don't want to export configuration files or the like).
Beign direct, I want to create server apps apps with netbeans 3.6 and I want to deploy them all from within the same IDE...
I don't know what options, command-line switches and variables need to work with to achieve this matter.
How can I do that?
Any comments will be very appreciated!
Carl!To connect to the J2EE 1.4 SDK or Sun Java System Application Server from NetBeans you need the plugin that enables the connection, which hasn't been released yet. It should be available at the end of the month.
-
JAAS and J2EE SDK -- please help!
Hi,
I'd like to know if it is possible to use customized LoginModule classes in the J2EE SDK reference impl. 1.3
If so what I can't understand is the following:
if I use the form-based auth. mechanism in my web app. how can I specify which login module to use? I mean I know JAAS needs an entry in a configuration file such as
mylogin{
MyLoginModule required debug=false;
};but my question is in what file should I add it? clientlogin.config, login.config or serverlogin.config?
And much more important question is: how can I then specify that I need to use the "mylogin" entry?
I don't know how the JSecurityCheck servlet work, is there any document where I can find the source code of it?
Please can anyone help me?
Thanks in advance.I managed to get it working in tomcat 4.0 if you create a config file with the details you've specified called login.config you then need to pass it as a parameter when you start your servlet engine
i.e. -Djava.security.auth.login.conf=login.config -
Hello I am trying to install J2EE SDK on Fedora from command line.
I downloaded J2EE 1.4 SDK 2005Q1 UR1(j2eesdk-1_4_01_2005Q1-linux.bin) and typed ./j2eesdk-1_4_01_2005Q1-linux.bin -console
I keep on getting an error. Am I missing someting? Here are the results:
Checking available disk space...
Checking Java(TM) 2 Runtime Environment...
Extracting Java(TM) 2 Runtime Environment files...
Extracting installation files...
Launching Java(TM) 2 Runtime Environment...
java.lang.UnsatisfiedLinkError: /tmp/j2eesl3hyHA/package/jre/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1586)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1503)
at java.lang.Runtime.loadLibrary0(Runtime.java:788)
at java.lang.System.loadLibrary(System.java:834)
at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)
at java.security.AccessController.doPrivileged(Native Method)
at sun.awt.NativeLibLoader.loadLibraries(NativeLibLoader.java:38)
at sun.awt.DebugHelper.<clinit>(DebugHelper.java:29)
at java.awt.Component.<clinit>(Component.java:506)
at com.sun.wizards.core.WizardTreeManager.createWizardPanel(WizardTreeManager.java:897)
at com.sun.wizards.core.WizardTreeManager.<init>(WizardTreeManager.java:332)
at com.sun.wizards.core.CommandLineConsole.run(CommandLineConsole.java:78)
at java.lang.Thread.run(Thread.java:534)
InvocationTargetException in ArchiveReader constructornull
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
at appserv.instantiateArchiveReader(ArchiveClassLoader.java:203)
at appserv.<init>(ArchiveClassLoader.java:143)
at appserv.main(ArchiveClassLoader.java:1271)
Caused by: java.lang.NoClassDefFoundError: com.sun.wizards.core.WizardComponent
at com.sun.install.tasks.InstallCommandLineTask.processLocales(InstallCommandLineTask.java:592)
at com.sun.install.tasks.InstallCommandLineTask.processCommandLineArguments(InstallCommandLineTask.java:540)
at com.sun.install.tasks.InstallCommandLineTask.initialize(InstallCommandLineTask.java:55)
at com.sun.wizards.core.Sequence.initialize(Sequence.java:173)
at com.sun.wizards.core.GenericWizardState.setWizardState(GenericWizardState.java:1874)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.wizards.core.ArchiveReader.callObjectMethod(ArchiveReader.java:1404)
at com.sun.wizards.core.ArchiveReader.<init>(ArchiveReader.java:287)
... 7 more
Target Exception Trace:
java.lang.NoClassDefFoundError: com.sun.wizards.core.WizardComponent
at com.sun.install.tasks.InstallCommandLineTask.processLocales(InstallCommandLineTask.java:592)
at com.sun.install.tasks.InstallCommandLineTask.processCommandLineArguments(InstallCommandLineTask.java:540)
at com.sun.install.tasks.InstallCommandLineTask.initialize(InstallCommandLineTask.java:55)
at com.sun.wizards.core.Sequence.initialize(Sequence.java:173)
at com.sun.wizards.core.GenericWizardState.setWizardState(GenericWizardState.java:1874)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.wizards.core.ArchiveReader.callObjectMethod(ArchiveReader.java:1404)
at com.sun.wizards.core.ArchiveReader.<init>(ArchiveReader.java:287)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
at appserv.instantiateArchiveReader(ArchiveClassLoader.java:203)
at appserv.<init>(ArchiveClassLoader.java:143)
at appserv.main(ArchiveClassLoader.java:1271)
Deleting temporary files...
Thanks for your help in advanceThis is probably similar to the problem described in this thread:
http://forum.java.sun.com/thread.jspa?forumID=136&threadID=526086
(i.e. headless AWT mode which is used to run J2EE installer in console mode is broken in J2SE 1.4.x).
One thing you can try, provided that J2SE issue got fixed, is to separately download and install JRE 1.5.x on this system and run installer as:
./j2eesdk-1_4_01_2005Q1-linux.bin -console -javahome <jre 1.5 install dir> -
Hello All,
I would like to run the J2EE SDK 1.4 on an AMD Opteron Server (Sun Fire - AMD) running Debian Linux. The kernel (2.6.12), the and the distribution (Debian unstable/testing) are both 64 bit versions. The J2EE SDK 1.4 is not available for this platform, so taking the base linux distribution and extracting it manually, and using the separate JDK 1.5 available specially for the AMD 64 bit installation gives this error:
Unable to read system environment. No system environment will be used.And then the Application Server fails to startup properly. This problem has been documented in the past, see (You will note that I posted a solution for running the J2EE SDK under Debian Linux):
http://forum.java.sun.com/thread.jspa?forumID=136&threadID=583452
https://j2ee-sdk.dev.java.net/howtos/J2EE_SDK_Installation_HOWTO.html
This time, though, installing the 'C++ compatibility library' is not an option. Even on the 64 bit distributions of redhat, this is still a 32 bit intel x86 library, and it is unusable on the AMD 64 architecture. There is not a separate version of this library available from redhat specifically for the 64 bit version of the AMD processor.
Suggestions and guidance are greatly appreciated.
Thanks,
Adam
Adam Just
http://www.acjust.comThe problem is with debian. installing j2ee in debian gives this kinda problem while j2se installs fine.
The error in ur case is due to the fact that its unable to find the hostname.
add <hostname> 127.0.0.1 in ur /etc/hosts file.
It should work after that. -
HOW TO DO: J2EE declaritive Security without LDAP????
My client doesn't want to store stuff in LDAP, and we already have existing authoriztion infrastruction stored in a DB. How can I my existing security infrastructure in conjuction with J2EE declarative security and iAS (6sp3, Solaris, oracle db, web clients)?
<i>Q: HOW TO DO: J2EE declaritive Security without LDAP?</i>
A: It can't be done with iAS. iAS 6.x expects security information to be in LDAP.
Your only option if they want to use a relational database is either to use some sort of meta directory (replication) to move the data from the relational database, or so sort of LDAP to RDBMS gateway.
David
http://www.amazon.com/exec/obidos/ASIN/076454909X/ -
Considering only the development tools & APIs from J2SE SDK (taking out the JRE), are those components (java, security, JPDA, etc) also part of the J2EE SDK?
How can I go about using java.util.regex? Can/Would
this regex
support be packaged into some extended javax packages
for JDK 1.3?No, the jre/jdk license prohibit taking its parts alone.
If I use J2SE SDK 1.4 and download all javax packges
that are
in J2EE but not J2SE, and compile my application,
wouldn't it end up with
run-time exceptions...?Hm..dunno.
Take a look at http://jregex.sourceforge.net
BestRegards -
I have an Airport Express that I am trying to use connected by ethernet to my iMac G4 running Mac OS 10.4.11. I need to update the Airport Express softwart in order to use security option WPA2 Personal to connect to the internet through my Airport Extreme. I currently have Airport Express software version 5.6.1. How can I update this software? (I can connect directly to my Airport Extreme by ethernet and download the update that way). Is a later version of A E software available for download anywhere? Any suggestions would be greatly appreciated.
Thanks.Download and install AirPort Utility 5.4.2 for Mac OS X 10.4.11 "Tiger" here:
AirPort Utility 5.4.2
Once installed, launch AirPort Utility. It will tell you if a firmware upgrade is available for your Express. -
In Apex 4.0.1 Security Option Missing Under Manage Services
In Apex 4.0.1, I am trying to edit session timeouts and password policies. The online docs say to login as as an Administrator and navigate to:
home->administration->manage services-> security
I am unable to see the "security" option anywhere.
Does anyone know how to get to this option?
Thank you.
Elie
Edited by: EEG on Oct 2, 2010 10:00 PMSorry. I just realized that I was logged-in as a "developer" not as the APEX Admin which, of course, is why I couldn't find the "security" option. I had too many windows open at once.
Elie -
WiFi Security Option No Longer There in 1.0.1 Update??
Is the Security Option under the WiFi/Settings no longer there in 1.0.1 Update??
Without it there, it is no longer allowing me to get on 128BIT HEX WEP encrypted WiFi Networks.
Thanks, Scott K.No, it is no longer there...
But, I HAVE found a solution...
For a 128BIT HEX password, if you place a 0x before the password, it will then take.
I noticed these two characters before other 128BIT HEX passwords in the Keychain application on my MacBook, and tried it on the iPhone, and it works!!
Thanks, Scott K. -
Problem in installation of J2EE SDK 1.3
I have installed J2EE SDK 1.3 on my machine. I have set
J2EE_HOME=C:\j2sdkee1.3.1
JAVA_HOME=C:\Program Files\j2sdk1.4.2_08
and
PATH=C:\j2sdkee1.3.1\bin
environmental variables. All the three path seem to OK. But when I'm trying to start application server using j2ee -verbose command on my dos prompt I'm getting following error
'C:\Program' is not recognized as an internal or external command, operable program or batch file.
I tried j2ee -verbose command from C: prompt as well as from C:\j2sdkee1.3.1\bin prompt in which j2ee batch file is present.
Please help/guide on above issueJAVA_HOME is having space character in it. Install J2SE at location where there are no spaces in the path and then try......
Maybe you are looking for
-
Hi. I've done some searching and can't figure out how to resolve this. And it's driving me crazy. For some time now, Flash video playback has been skipping chronically on my MBP. I thought it might be because I needed to do some housecleaning, but I'
-
Dynamic (session) language setting not working in external ITS v6.20
Hi everybody, We have upgraded from ITS 2.0 to 6.20 patchlevel 35. In the service (srvc) file following parameters have been set; ~languages tr, en ~language tr So we want our users to log on in Turkish (tr) language, but they have to be a
-
I'm a newbie to Blackberry - What is the first step to correctly using the instrument ?
I'm a newbie to Blackberry - What is the first step to correctly using the instrument ? I just acquired my first blackberry phone model-9810. What are the different simple steps or the procedure that I should follow to correctly use this instrume
-
LMS 4.2 Large-Scale Deployment
Hi all. I have a LMS server running with 6000 devices on the DCR, but now i need torn on all features for this server could you guys help me with this questions: Since the number is 6000 installed at a windows machine, for the multi server domain ca
-
SAP Business One Institutes in Hyd
Hi All, Can anyone tell me who teaches SAP Business one in HYderabad. It will be a great help to me. Thankyou. Cheers, Srikanth.