我们在群集QA环境中收到以下错误.我们在linux上运行Weblogic 10.3.3.0.
####<Mar 29, 2011 3:59:54 PM CDT> <Error> <Cluster> <app2.qa.server.com> <qa_app2j> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <1301432394933> <BEA-000126> <All session objects should be serializable to replicate. Check the objects in your session. Failed to replicate non-serializable object.
java.rmi.MarshalException: failed to marshal update(Lweblogic.cluster.replication.ROID;ILjava.io.Serializable;Ljava.lang.Object;); nested exception is:
java.io.NotSerializableException: com.tjf.admin.virtualFair.Job$1
at weblogic.rjvm.BasicOutboundRequest.marshalArgs(BasicOutboundRequest.java:92)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:221)
at weblogic.cluster.replication.ReplicationManager_1033_WLStub.update(Unknown Source)
at sun.reflect.GeneratedMethodAccessor15419.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at weblogic.cluster.replication.SecureReplicationInvocationHandler$ReplicationServicesInvocationAction.run(SecureReplicationInvocationHandler.java:184)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.cluster.replication.SecureReplicationInvocationHandler.invoke(SecureReplicationInvocationHandler.java:154)
at $Proxy98.update(Unknown Source)
at weblogic.cluster.replication.ReplicationManager.updateSecondary(ReplicationManager.java:535)
at weblogic.servlet.internal.session.ReplicatedSessionData.syncSession(ReplicatedSessionData.java:594) …Run Code Online (Sandbox Code Playgroud) 我有一个小型Web应用程序,正在使用Spring,Hibernate和JSF2.0。
我正在将应用程序部署到与Eclipse服务器集成在一起的Weblogic 10.3.6。当我将应用程序发布到服务器时,它会被发布(部署),但是与Glassfish相比,它需要花费相当长的时间才能发布。
我遇到的问题是,当我尝试从浏览器运行应用程序时,尽管在日志中没有看到任何错误或异常,但是在浏览器中却遇到以下错误。我该如何解决这个问题?以及为什么要花这么多时间部署到服务器?
Error 503--Service Unavailable
From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
10.5.4 503 Service Unavailable
The server is currently unable to handle the request due to a temporary
overloading or maintenance of the server. The implication is that this
is a temporary condition which will be alleviated after some delay. If known,
the length of the delay may be indicated in a Retry-After header.
If no Retry-After is given, the client SHOULD handle the response as …Run Code Online (Sandbox Code Playgroud) 有人能告诉我在哪里可以找到EJB 3的默认JNDI命名信息吗?
Weblogic是否使用像Glassfish这样的可移植JNDI名称?
我是否可以(使用Glassfish)找到使用JNDI名称的EJB部署的痕迹?
例如 :
.ear文件中的所有内容(service-application-1.0)在Weblogic上部署时,我看到的唯一JNDI引用是:
service-application-1.0service-application-1.0_jarServiceImpl_Home
Run Code Online (Sandbox Code Playgroud)
但我不能在上下文查找中使用该名称.如果我做
Service myService = (Service) context.lookup("service-application-1.0service-application-1.0_jarServiceImpl_Home");
Run Code Online (Sandbox Code Playgroud)
它给了我
Exception in thread "main" java.lang.ClassCastException: weblogic.ejb.container.internal.StatelessEJBHomeImpl_1035_WLStub cannot be cast to com.tuto.Service
at com.tuto.TestEjb.main(TestEjb.java:24)
Run Code Online (Sandbox Code Playgroud)
PS.有了Glassfish它给了我
Portable jndi names for .... : java:global/service-application-1.0/service-application-ejb-1.0/ServiceImpl
Run Code Online (Sandbox Code Playgroud)
和
Service myService = (Service) context.lookup("java:global/service-application-1.0/service-application-ejb-1.0/ServiceImpl");
Run Code Online (Sandbox Code Playgroud)
工作中.
我正在使用 Maven 3 和 JDK 1.7。当我尝试这样做时mvn install,出现以下错误
[ERROR] /domain/view/EmployeeNameConverter.java:[29,76] cannot access
javax.el.ELContext
class file for javax.el.ELContext not found
[ERROR] /EmployeeNameConverter.java:[28,55] cannot access javax.el.ELResolver
class file for javax.el.ELResolver not found
Run Code Online (Sandbox Code Playgroud)
当我编译我的项目时,我没有收到任何异常或编译错误。
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>domain</groupId>
<artifactId>myapp</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>myapp</name>
<url>http://maven.apache.org</url>
<repositories>
<repository>
<id>prime-repo</id>
<name>PrimeFaces Maven Repository</name>
<url>http://repository.primefaces.org</url>
<layout>default</layout>
</repository>
</repositories>
<properties>
<spring.version>3.1.1.RELEASE</spring.version>
</properties>
<dependencies>
<!-- Spring 3 dependencies -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency> …Run Code Online (Sandbox Code Playgroud) 我看到stackoverflow上还有一些其他Java和CAC帖子.我是所有这些东西的初学者,我仍然在尝试一个框架,该做什么以及在我的脑海中去哪里.
我正在为一个大型组织工作,该组织使用带有Windows 7盒子的CAC来验证想要进入他们PC的用户.他们将CAC固定在键盘上并输入PIN码.
我的老板想改变我们的Java Webap,这样如果用户在他们的计算机上安装了CAC,它就不会让用户进行身份验证.如果没有,他们将通过传统的LDAP登录.
我们正在使用WebLogic 11g和Java 6.
从谷歌搜索似乎有两种方法:
实现applet以读取用户的CAC并将SSL证书发送到webapp.
在Web服务器中实现"相互SSL身份验证",这将导致浏览器将CAC上的SSL证书发送到Web应用程序
我对我的选择有正确的评价吗?
哪种解决方案更容易?
从长远来看哪个更麻烦,更强大?
我对SSL几乎一无所知,这似乎在两种解决方案中都很常见.我发现了一些关于抽象概念的SSL教程.任何人都可以推荐一个很好的教程,我想做什么?
非常感谢您提供任何信息或提示
史蒂夫
是否可以X-Forwarded-For在weblogic的access.log日志文件中记录标题?
我正在使用Weblogic 10.3.6 + Hibernate 3和EJB 3.0
我正在尝试更新实体,但它没有在数据库中更新.没有例外
请找到hibernate配置文件,如下所示
<property name="hibernate.connection.datasource">jdbc/wfAR_ConnectionDS</property>
<property name="hibernate.generate_statistics">true</property>
<property name="hibernate.hibernate.session_factory_name">wfAR_ConnectionDS</property>
<property name="hibernate.current_session_context_class">thread</property>
<property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
<property name="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</property>
<property name="hibernate.connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriver</property>
<property name="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.WeblogicTransactionManagerLookup</property>
<property name="hibernate.transaction.factory.class">org.hibernate.transaction.CMTTransactionFactory</property>
<property name="hibernate.transaction.auto_close_session">false</property>
<property name="hibernate.transaction.flush_before_completion">true</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.use_sql_comments">true</property>
<property name="hibernate.format_sql">true</property>
Run Code Online (Sandbox Code Playgroud)
我正在使用以下代码更新EJB中的实体
@TransactionAttribute(TransactionAttributeType.REQUIRED)
public long updateCustomerData(ArCatCustomer customer){
long id=-1;
Session session = sessionFactory.openSession();
try{
System.out.println("**************Trying to Update***********");
session.update(customer);
//session.evict(customer);
session.flush();
System.out.println("***********Update Finished***********");
}catch(RuntimeException runExp){
runExp.printStackTrace();
throw runExp;
} finally{
session.close();
}
return id;
}
Run Code Online (Sandbox Code Playgroud)
我可以在控制台中看到以下内容:
**************Trying to Update***********
Hibernate:
/* update
com.ar.flextronics.model.ArCatCustomer */ update
AR_catCustomer …Run Code Online (Sandbox Code Playgroud) 服务器环境:Weblogic 10.3.6,JDK 1.7
我有一个使用JDK 7运行的简单工作 Java SE 客户端应用程序。在客户端,我正在对上面提到的资源托管服务器进行非常简单的 JNDI 外观。
ClassPath 中的罐子: wlthint3client.jar
public static void main(String[] args) throws Exception {
Hashtable t = new Hashtable();
t.put(InitialContext.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
t.put(InitialContext.PROVIDER_URL, "t3://localhost:7003/");
InitialContext ic = new InitialContext(t);
String jndiName = "weblogic.jdbc.DataSource.Workflow";
Object obj = ic.lookup(jndiName);
System.out.println("Found it");
}
Run Code Online (Sandbox Code Playgroud)
我必须将我的工作 Java SE 客户端应用程序从JDK 7升级到 JDK 11。服务器环境保持不变。
一旦我将客户端升级到 JDK 11,我就会遇到以下错误。这是意料之中的,因为 corba jar 已从 JDK 11 中移出。
Exception in thread "main" java.lang.NoClassDefFoundError: org/omg/CORBA/SystemException
at weblogic.jndi.WLInitialContextFactoryDelegate.<clinit>(WLInitialContextFactoryDelegate.java:202)
at weblogic.jndi.spi.EnvironmentManager$DefaultFactoryMaker.<clinit>(EnvironmentManager.java:27) …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用命令行部署将应用程序重新部署到 Weblogic 10.3.6,
java weblogic.Deployer -adminurl myserver:7001 -user deploymyuser
-password welcome1 -targets mytarget -name appname -redeploy
D:/app/deploy/app.ear -upload -remote
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
<Error> <J2EE Deployment SPI> <BEA-260101> <Parameter 'moduleArchive'
may not be null.>
[J2EE Deployment SPI:260101]Parameter 'moduleArchive' may not be null.
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?
weblogic11g ×9
java ×4
weblogic ×4
ejb-3.0 ×2
jndi ×2
cac ×1
corba ×1
deployment ×1
eclipse ×1
hibernate ×1
java-11 ×1
jsf-2 ×1
maven ×1
maven-3 ×1
middleware ×1