Bug 798677

Summary: Operations are not immediately visible to the user and message is misleading (Usability)
Product: [JBoss] JBoss Enterprise SOA Platform 5 Reporter: Pavel Kralik <pkralik>
Component: JONAssignee: tcunning
Status: CLOSED NOTABUG QA Contact:
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 5.2.0 GACC: ldimaggi, mharvey, mvecera, soa-p-jira, vhalbert
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-03-14 13:50:00 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 735475    
Attachments:
Description Flags
Annotated screenshot of the Operations tab for a VDB
none
The Operation tab exception none

Description Pavel Kralik 2012-02-29 14:53:44 UTC
Description of problem:
There are no items (Start, Stop, Reset) in Operations tab in all hierarchy of the SOA-P 5 Server

Version-Release number of selected component (if applicable):
Fedora 13
jon-server-3.0.1.GA-5
PostgreSQL 8.4.8
FF 3.6.17

How reproducible:
Always

Steps to Reproduce:
1. Instal SOA-P 5.2.GA
2. Start JON Server 3.0.1
3. Inventory the SOA-P server into the JON, update connection properties and go anywhere in the SOA-P hierarchy (SOA server, JBoss ESB, etc.) into Operations tab and see the exception.

Actual results:
org.rhq.core.pluginapi.inventory.InvalidPluginConfigurationException: Failed to start component for resource Resource[id=10003, type=JBossAS Server, key=/home/pkralik/jon_test/soa/jboss-soa-p-5/jboss-as/server/production, name=SOA kapr.brq.redhat.com:1099 production, parent=kapr.brq.redhat.com, version=SOA 5.2.0.GA_SOA].
	at org.rhq.core.pc.inventory.InventoryManager.activateResource(InventoryManager.java:1625)
	at org.rhq.core.pc.inventory.AvailabilityExecutor.checkInventory(AvailabilityExecutor.java:202)
	at org.rhq.core.pc.inventory.AvailabilityExecutor.checkInventory(AvailabilityExecutor.java:238)
	at org.rhq.core.pc.inventory.AvailabilityExecutor.call(AvailabilityExecutor.java:127)
	at org.rhq.core.pc.inventory.AvailabilityExecutor.call(AvailabilityExecutor.java:55)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
	at java.util.concurrent.FutureTask.run(FutureTask.java:166)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:165)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
	at java.lang.Thread.run(Thread.java:636)
Caused by: org.rhq.core.pluginapi.inventory.InvalidPluginConfigurationException: Values of 'principal' and/or 'credentials' connection properties are invalid.
	at org.rhq.plugins.jbossas5.ApplicationServerComponent.connectToProfileService(ApplicationServerComponent.java:381)
	at org.rhq.plugins.jbossas5.ApplicationServerComponent.start(ApplicationServerComponent.java:180)
	at sun.reflect.GeneratedMethodAccessor47.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:616)
	at org.rhq.core.pc.inventory.ResourceContainer$ComponentInvocationThread.call(ResourceContainer.java:552)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
	at java.util.concurrent.FutureTask.run(FutureTask.java:166)
	... 3 more
Caused by: java.lang.SecurityException: Authentication exception, principal=null
	at org.jboss.aspects.security.AuthenticationInterceptor.authenticate(AuthenticationInterceptor.java:142)
	at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:69)
	at org.jboss.profileservice.remoting.SecurityContainer.invoke(SecurityContainer.java:75)
	at $Proxy456.load(Unknown Source)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:616)
	at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:121)
	at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
	at org.jboss.profileservice.remoting.ProfileServiceInvocationHandler.invoke(ProfileServiceInvocationHandler.java:99)
	at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:967)
	at org.jboss.remoting.transport.socket.ServerThread.completeInvocation(ServerThread.java:791)
	at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:744)
	at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:548)
	at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:234)
	at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:218)
	at org.jboss.remoting.Client.invoke(Client.java:2070)
	at org.jboss.remoting.Client.invoke(Client.java:879)
	at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:60)
	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
	at org.jboss.aspects.remoting.MergeMetaDataInterceptor.invoke(MergeMetaDataInterceptor.java:74)
	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
	at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:65)
	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
	at org.jboss.aop.generatedproxies.AOPProxy$1.load(AOPProxy$1.java)
	at org.rhq.plugins.jbossas5.connection.AbstractProfileServiceConnection.init(AbstractProfileServiceConnection.java:47)
	at org.rhq.plugins.jbossas5.connection.AbstractProfileServiceConnectionProvider.connect(AbstractProfileServiceConnectionProvider.java:43)
	at org.rhq.plugins.jbossas5.ApplicationServerComponent.connectToProfileService(ApplicationServerComponent.java:371)
	at org.rhq.plugins.jbossas5.ApplicationServerComponent.start(ApplicationServerComponent.java:180)
	at sun.reflect.GeneratedMethodAccessor47.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:616)
	at org.rhq.core.pc.inventory.ResourceContainer$ComponentInvocationThread.call(ResourceContainer.java:552)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
	at java.util.concurrent.FutureTask.run(FutureTask.java:166)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
	at java.lang.Thread.run(Thread.java:636)
	at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:72)
	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
	at org.jboss.aspects.remoting.MergeMetaDataInterceptor.invoke(MergeMetaDataInterceptor.java:74)
	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
	at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:65)
	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
	at org.jboss.aop.generatedproxies.AOPProxy$1.load(AOPProxy$1.java)
	at org.rhq.plugins.jbossas5.connection.AbstractProfileServiceConnection.init(AbstractProfileServiceConnection.java:47)
	at org.rhq.plugins.jbossas5.connection.AbstractProfileServiceConnectionProvider.connect(AbstractProfileServiceConnectionProvider.java:43)
	at org.rhq.plugins.jbossas5.ApplicationServerComponent.connectToProfileService(ApplicationServerComponent.java:371)
	... 10 more

Expected results:
Operations links.

Additional info:

Comment 1 Len DiMaggio 2012-03-02 16:14:19 UTC
Marking this as urgent as this is a regression.

Comment 2 Pavel Kralik 2012-03-07 17:18:01 UTC
The exception is in upper right corner as a white triangle next to availability icon in the the SOA-P server resource.

Comment 3 tcunning 2012-03-07 18:12:34 UTC
I have not been able to reproduce this.    I've tested with just the SOA plugin pack, and everything works fine there.    If I install the EDS plugin pack instead, the Java Naming Provider is set to the following in Connection Settings :

jnp://jboss:service=Naming             Port:***CHANGE_ME***

If I change that to jnp://127.0.0.1:1099, everything seems to work fine.

Comment 4 Charles Crouch 2012-03-09 15:12:53 UTC
(10:58:09 AM) mazz: that ***CHANGE_ME*** is an indication that the port could not be auto-discovered
(10:58:37 AM) mazz: rather than leave it null or empty, its set to that to indicate auto-discovery of the port failed and the user needs to manually set it

Given this works fine with the SOA plugin pack, are the EDS plugins changing how the jnp URL is being discovered, and for some reason that is not working?

Comment 5 Charles Crouch 2012-03-09 15:18:11 UTC
Setting this to urgent since its blocking the JON3.0.1 release.

Comment 6 Van Halbert 2012-03-09 16:00:50 UTC
This looks similar to an old JOPR bug:  https://issues.jboss.org/browse/JOPR-322

Comment 7 Paul Nittel 2012-03-13 15:40:59 UTC
Created attachment 569707 [details]
Annotated screenshot of the Operations tab for a VDB

The operations tab has changed from the 2.4.x version of JON where the tab showed all the available operations upon initial display. The 3.0.x version shows a blank screen with the text, "No items to show". The user may interpret this to mean the selected object has no available operations. (That's what happened to me.)

Actually, the user must click the New button (located way down at the bottom, where it may be overlooked). A drop-down of available operations is then presented to the user.

As a suggestion, perhaps change the text to read "To schedule an operation, click the New button below". Making the color of the New button stand out more might also help--it sort of fades into the background as is.

Comment 8 Pavel Kralik 2012-03-14 13:23:23 UTC
Created attachment 569986 [details]
The Operation tab exception

The bug is a yellow triangle in the right upper corner of the page.

Comment 9 Len DiMaggio 2012-03-14 13:33:34 UTC
Usability issue - will be covered in the docs - from Deon:


I updated three places in the docs, just to try to hit places people might look if they encountered that Operations tab question. This is all basically the same text.

    * FAQ: http://documentation-stage.bne.redhat.com/docs/en-US/JBoss_Operations_Network/300/html/Frequently_Asked_Questions/index.html#id3333992
    * "About" operations: http://documentation-stage.bne.redhat.com/docs/en-US/JBoss_Operations_Network/3.0/html/Setting_up_Monitoring_Alerts_and_Operations/Operations.html#op-scheds (looks like this is missing an image; I'll check and get that fixed)
    * Scheduling operations (procedure): http://documentation-stage.bne.redhat.com/docs/en-US/JBoss_Operations_Network/3.0/html/Setting_up_Monitoring_Alerts_and_Operations/OperationProc.html#Creating-New-Operations