Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 929172

Summary: Duplicate guava.jar in gadget-server.war
Product: [JBoss] JBoss Fuse Service Works 6 Reporter: Ryan Zhang <rzhang>
Component: Build ProcessAssignee: Julian Coleman <jcoleman>
Status: CLOSED CURRENTRELEASE QA Contact: Jiri Sedlacek <jsedlace>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.0.0 GACC: atangrin, dlesage, ncross, oskutka, soa-p-jira
Target Milestone: DR3   
Target Release: 6.0.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
server.log none

Description Ryan Zhang 2013-03-29 11:31:30 UTC
Description of problem:
There are two guava.jar causing problem of deployment of gadget-server.war.
Noticed that it is not always reproduce to every machine.
Already discussed with Jeff Yu, it happens to some machine , well, not happens to other,  which seems to me it happens randomely.

But I think the duplicate guava.jar can be fixed. I tested that guava-11.0.2.jar would cause the problem below. Hopefully we can remove it.

[rzhang@/home/rzhang/workspace/ip/product/soa/target/jboss-eap-6.1/standalone/deployments/gadget-server.war/WEB-INF/lib]$ls -l guava-1*
-rw-rw-r-- 1 rzhang rzhang 1501575 Oct 10  2011 guava-10.0.1.jar
-rw-rw-r-- 1 rzhang rzhang 1648200 Mar 27 11:39 guava-11.0.2.jar

The stacktrace is:
19:27:36,124 INFO  [org.jboss.web] (ServerService Thread Pool -- 63) JBAS018210: Register web context: /gadget-web
19:27:38,053 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/gadget-server]] (ServerService Thread Pool -- 65) JBWEB000287: Exception sending context initialized event to listener instance of class org.apache.shindig.common.servlet.GuiceServletContextListener: com.google.inject.CreationException: Guice creation errors:

1) Error injecting constructor, java.lang.IllegalAccessError: tried to access method com.google.common.collect.MapMaker.expireAfterWrite(JLjava/util/concurrent/TimeUnit;)Lcom/google/common/collect/MapMaker; from class org.apache.shindig.gadgets.render.DefaultRpcServiceLookup
  at org.apache.shindig.gadgets.render.DefaultRpcServiceLookup.<init>(DefaultRpcServiceLookup.java:56)
  at org.apache.shindig.gadgets.render.DefaultRpcServiceLookup.class(DefaultRpcServiceLookup.java:56)
  while locating org.apache.shindig.gadgets.render.DefaultRpcServiceLookup
  while locating org.apache.shindig.gadgets.render.RpcServiceLookup
    for parameter 0 at org.apache.shindig.gadgets.config.OsapiServicesConfigContributor.<init>(OsapiServicesConfigContributor.java:46)
  at org.apache.shindig.gadgets.config.OsapiServicesConfigContributor.class(OsapiServicesConfigContributor.java:46)
  while locating org.apache.shindig.gadgets.config.OsapiServicesConfigContributor
  while locating org.apache.shindig.gadgets.config.ConfigContributor annotated with @com.google.inject.multibindings.Element(setName=,uniqueId=3)
Caused by: java.lang.IllegalAccessError: tried to access method com.google.common.collect.MapMaker.expireAfterWrite(JLjava/util/concurrent/TimeUnit;)Lcom/google/common/collect/MapMaker; from class org.apache.shindig.gadgets.render.DefaultRpcServiceLookup
	at org.apache.shindig.gadgets.render.DefaultRpcServiceLookup.<init>(DefaultRpcServiceLookup.java:57)
	at org.apache.shindig.gadgets.render.DefaultRpcServiceLookup$$FastClassByGuice$$3d2cc576.newInstance(<generated>)
	at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
	at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
	at com.google.inject.Scopes$1$1.get(Scopes.java:65)
	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
...

Please see the full stacktrace in server.log attached.

Version-Release number of selected component (if applicable):


How reproducible:
gadget-server.war M4 + EAP 6.1

Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Ryan Zhang 2013-03-29 11:32:41 UTC
Created attachment 718038 [details]
server.log

Comment 2 JBoss JIRA Server 2013-04-06 06:06:46 UTC
Jeff Yu <cyu> updated the status of jira GADGETS-52 to Resolved

Comment 3 Ryan Zhang 2013-05-02 10:28:32 UTC
Verified ok.
I changed this status to verified since this can be verified during productization phase.

Comment 4 JBoss JIRA Server 2013-06-07 15:50:42 UTC
Gary Brown <gary> updated the status of jira GADGETS-52 to Closed