| Title: About the 'tomee' webapp |
| Notice: Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| . |
| http://www.apache.org/licenses/LICENSE-2.0 |
| . |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| |
| There are two forms of the `tomee` webapp to consider: |
| |
| - from an **tomee-1.x.x.war** that has been downloaded and added to a Tomcat 7 install. This `tomee` webapp will contain all the necessary libraries to add the missing Java EE functionality to Tomcat as well as a small console. |
| - from an **apache-tomee-1.x.x.zip**. The `tomee` webapp shipped inside a TomEE zip or tar is the same webapp as above, but with the libraries moved into the `<tomcat-home>/lib/` directory |
| |
| The only real difference between a "Tomcat with drop-in tomee.war" and a "TomEE" install is where the additional libraries live. |
| |
| ## Deleting from plain Tomcat |
| |
| Deleting the `tomee` webapp from a plain Tomcat install will effectively uninstall TomEE from Tomcat. |
| |
| ## Deleting from TomEE |
| |
| Deleting the `tomee` webapp from a TomEE install is safe as the needed libraries have been moved into `<tomcat-home>/lib/` |
| |
| The only loss of functionality would be the ability to remotely execute EJBs over HTTP. However this can easily be added to a different webapp like so: |
| |
| <servlet> |
| <servlet-name>ServerServlet</servlet-name> |
| <servlet-class>org.apache.openejb.server.httpd.ServerServlet</servlet-class> |
| </servlet> |
| |
| <servlet-mapping> |
| <servlet-name>ServerServlet</servlet-name> |
| <url-pattern>/myejbs/*</url-pattern> |
| </servlet-mapping> |
| |
| |
| Then you can create an `InitialContext` that points to that webapp like so: |
| |
| Properties p = new Properties(); |
| p.put("java.naming.factory.initial", "org.apache.openejb.client.RemoteInitialContextFactory"); |
| p.put("java.naming.provider.url", "http://127.0.0.1:8080/mywebapp/myejbs"); |
| // user and pass optional |
| p.put("java.naming.security.principal", "myuser"); |
| p.put("java.naming.security.credentials", "mypass"); |
| |
| InitialContext ctx = new InitialContext(p); |
| |
| MyBean myBean = (MyBean) ctx.lookup("MyBeanRemote"); |