hibernate+struts1.1+weblogic8+JBuilder2005的開發環境的配置
開發時的環境配置如下:
寫一個啟動類載入和繫結hibernate的sessionfactory到weblogic下
程式碼如下:
public class HibernateStartUp implements T3StartupDef {
public static String CONFIG_FILE_PATH = "/hibernate.cfg.xml";
public void setServices(T3ServicesDef services) {}
public static final String SESSION_FACTORY_JNDI = "hibernate";
public static final String URL = "t3://localhost:7001";
public String startup(String name, Hashtable args) throws Exception {
try {
doBind();
return "Hibernate Startup completed successfully";
} catch (Exception e) {
}
return "Hibernate Startup completed successfully";
}
private static void doBind( ) throws Exception
{
Properties environment = null;
InitialContext context = null;
try
{
environment = new Properties( );
environment.put(
Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
environment.put( Context.PROVIDER_URL, URL );
context = new InitialContext( environment );
Configuration configuration = (new Configuration()).configure(CONFIG_FILE_PATH);
SessionFactory factory = configuration.buildSessionFactory();
if (factory == null)
throw new Exception("SessionFactory cannot be built?!");
try
{
if( context.lookup("hibernate")!= null )
{
context.rebind("hibernate", factory);
}
else
{
context.bind("hibernate", factory);
}
}
catch ( NamingException nameEx )
{
nameEx.printStackTrace();
context.bind("hibernate", factory );
}
}
catch ( NamingException nameExp )
{
throw new Exception( "NamingException: " + nameExp.getMessage( ));
}
catch( Exception excp )
{
throw excp;
}
}
static private InitialContext getInitialContext() throws Exception {
String url = "t3://localhost:7001";
Properties properties = null;
try {
properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
properties.put(Context.PROVIDER_URL, url);
return new InitialContext(properties);
}
catch(Exception e) {
logger.fatal("Unable to connect to WebLogic server at " + url);
logger.fatal("Please make sure that the server is running.");
throw e;
}
}
}
然後編譯
在Jbuilder2005的Configserver下的calsspath下面加入這個類的所在路徑,我的是
C:\work\overstock\classes
然後把hibernate用到的jar檔案也加入,就可以開發了。
部署的時候只要把這些路徑加入到domain的startWebLogic.cmd中就可以,不過要把
C:\work\overstock\classes中的類打成jar包再加,要不weblogic會找不到的。
參考文章:http://www.hibernate.org/120.html
寫一個啟動類載入和繫結hibernate的sessionfactory到weblogic下
程式碼如下:
public class HibernateStartUp implements T3StartupDef {
public static String CONFIG_FILE_PATH = "/hibernate.cfg.xml";
public void setServices(T3ServicesDef services) {}
public static final String SESSION_FACTORY_JNDI = "hibernate";
public static final String URL = "t3://localhost:7001";
public String startup(String name, Hashtable args) throws Exception {
try {
doBind();
return "Hibernate Startup completed successfully";
} catch (Exception e) {
}
return "Hibernate Startup completed successfully";
}
private static void doBind( ) throws Exception
{
Properties environment = null;
InitialContext context = null;
try
{
environment = new Properties( );
environment.put(
Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
environment.put( Context.PROVIDER_URL, URL );
context = new InitialContext( environment );
Configuration configuration = (new Configuration()).configure(CONFIG_FILE_PATH);
SessionFactory factory = configuration.buildSessionFactory();
if (factory == null)
throw new Exception("SessionFactory cannot be built?!");
try
{
if( context.lookup("hibernate")!= null )
{
context.rebind("hibernate", factory);
}
else
{
context.bind("hibernate", factory);
}
}
catch ( NamingException nameEx )
{
nameEx.printStackTrace();
context.bind("hibernate", factory );
}
}
catch ( NamingException nameExp )
{
throw new Exception( "NamingException: " + nameExp.getMessage( ));
}
catch( Exception excp )
{
throw excp;
}
}
static private InitialContext getInitialContext() throws Exception {
String url = "t3://localhost:7001";
Properties properties = null;
try {
properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
properties.put(Context.PROVIDER_URL, url);
return new InitialContext(properties);
}
catch(Exception e) {
logger.fatal("Unable to connect to WebLogic server at " + url);
logger.fatal("Please make sure that the server is running.");
throw e;
}
}
}
然後編譯
在Jbuilder2005的Configserver下的calsspath下面加入這個類的所在路徑,我的是
C:\work\overstock\classes
然後把hibernate用到的jar檔案也加入,就可以開發了。
部署的時候只要把這些路徑加入到domain的startWebLogic.cmd中就可以,不過要把
C:\work\overstock\classes中的類打成jar包再加,要不weblogic會找不到的。
參考文章:http://www.hibernate.org/120.html
相關文章
- 我的Ubuntu 開發環境配置Ubuntu開發環境
- 配置豪華的 Windows 開發環境Windows開發環境
- 開發環境配置開發環境
- emacs開發環境配置(4)——rust開發環境Mac開發環境Rust
- 配置開發環境、生成環境、測試環境開發環境
- react 配置開發環境React開發環境
- js開發環境配置JS開發環境
- Java開發環境配置Java開發環境
- weex開發環境配置開發環境
- Arduino開發環境配置UI開發環境
- Ubuntu開發環境配置Ubuntu開發環境
- Python開發環境的安裝配置Python開發環境
- Java開發環境的安裝和配置Java開發環境
- 開發環境的 Ubuntu Desktop 18.04LTS 開發環境配置備忘開發環境Ubuntu
- Docker配置PHP開發環境DockerPHP開發環境
- MacOS 配置 Flutter 開發環境MacFlutter開發環境
- MacOS PHP 開發環境配置MacPHP開發環境
- (二) electron 開發環境配置開發環境
- Mac 基本開發環境配置Mac開發環境
- Webpack 配置 React 開發環境WebReact開發環境
- 配置Groovy開發環境(Windows)開發環境Windows
- Libgdx開發環境配置開發環境
- ionic app 開發和生產環境的配置APP
- window系統中配置Vue的開發環境Vue開發環境
- 配置silverlight 2的開發環境開發環境
- 常用整合開發環境(IDE)的CUDA配置開發環境IDE
- CoffeeScript的Sublime Text 2開發環境配置開發環境
- CentOS環境下LAMP開發環境的搭建與配置(10分鐘搞定!!!)CentOSLAMP開發環境
- 從零開始配置基本的前端開發環境(windows)前端開發環境Windows
- archlinux配置安卓開發環境Linux安卓開發環境
- Flutter開發環境配置(MAC版)Flutter開發環境Mac
- Nginx開發環境跨域配置Nginx開發環境跨域
- mac pro配置php開發環境MacPHP開發環境
- Mac 配置 Flutter 安卓開發環境MacFlutter安卓開發環境
- Mac OS配置QT開發環境MacQT開發環境
- Webpack(開發、生產環境配置)Web
- 驅動篇——開發環境配置開發環境
- webpack配置React開發環境(上)WebReact開發環境