Bug 1099447

Summary: [as7] It's not possible to add a port to SocketBindingGroup resource
Product: [Other] RHQ Project Reporter: Filip Brychta <fbrychta>
Component: Configuration, PluginsAssignee: Thomas Segismont <tsegismo>
Status: ON_QA --- QA Contact:
Severity: high Docs Contact:
Priority: unspecified    
Version: 4.11CC: hrupp, jshaughn, tsegismo
Target Milestone: ---   
Target Release: RHQ 4.13   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1150009 (view as bug list) 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:
Bug Depends On:    
Bug Blocks: 1150009    

Description Filip Brychta 2014-05-20 10:34:23 UTC
Description of problem:
Attempt to add a port to SocketBindingGroup resource ends with:
BadArgumentException: configuration not updated: [Required property 'fixed-port' has a null value.

Version-Release number of selected component (if applicable):
Version :	
4.12.0-SNAPSHOT
Build Number :	
494e428

How reproducible:
Always

Steps to Reproduce:
1. navigate to eap6 standalone server resource->SocketBindingGroups->standard-sockets->Configuration
2. click on Add button inside Individual socket bindings section
3. fill in name and port
4. Click on Ok
5. Click on Save

Actual results:
org.rhq.enterprise.server.rest.BadArgumentException:Bad parameter(s) given: Invalid newResourceConfiguration, configuration not updated: [Required property 'fixed-port' has a null value.]


Expected results:
No errors

Additional info:
Exception from server.log:
06:19:09,077 WARN  [org.rhq.coregui.server.gwt.ConfigurationGWTServiceImpl] (http-/0.0.0.0:7080-29) Sending exception to client: [1400581149077] : org.rhq.enterprise.server.rest.BadArgumentException: Bad parameter(s) given: Invalid newResourceConfiguration, configuration not updated: [Required property 'fixed-port' has a null value.]
        at org.rhq.enterprise.server.configuration.ConfigurationManagerBean.updateResourceConfiguration(ConfigurationManagerBean.java:1372) [rhq-server.jar:4.12.0-SNAPSHOT]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_45]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_45]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_45]
        at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_45]
        at org.jboss.as.ee.component.ManagedReferenceMethodInterceptorFactory$ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptorFactory.java:72) [jboss-as-ee-7.2.0.Alpha1-redhat-4.jar:7.2.0.Alpha1-redhat-4]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
        at org.jboss.invocation.WeavedInterceptor.processInvocation(WeavedInterceptor.java:53) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
        at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:58) [jboss-as-ee-7.2.0.Alpha1-redhat-4.jar:7.2.0.Alpha1-redhat-4]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
        at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:374) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
        at org.rhq.enterprise.server.common.PerformanceMonitorInterceptor.monitorHibernatePerformance(PerformanceMonitorInterceptor.java:32) [rhq-server.jar:4.12.0-SNAPSHOT]
        at sun.reflect.GeneratedMethodAccessor84.invoke(Unknown Source) [:1.7.0_45]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_45]
        at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_45]
        at org.jboss.as.ee.component.ManagedReferenceLifecycleMethodInterceptorFactory$ManagedReferenceLifecycleMethodInterceptor.processInvocation(ManagedReferenceLifecycleMethodInterceptorFactory.java:123) [jboss-as-ee-7.2.0.Alpha1-redhat-4.jar:7.2.0.Alpha1-redhat-4]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
        at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:374) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
        at org.rhq.enterprise.server.common.TransactionInterruptInterceptor.addCheckedActionToTransactionManager(TransactionInterruptInterceptor.java:78) [rhq-server.jar:4.12.0-SNAPSHOT]
.
.

Comment 1 Thomas Segismont 2014-10-10 14:38:54 UTC
Looks related to the fix for Bug 1065461. Since it is fixed, a BadArgumentException is thrown if a configuration has validation errors.

Most probably ConfigurationUtility#validateConfiguration has a bug.

Comment 2 Thomas Segismont 2014-10-10 15:41:04 UTC
Fixed in master

commit e6c85505ede4077d511b73e55daf0a7cc46163e8
Author: Thomas Segismont <tsegismo>
Date:   Fri Oct 10 17:40:02 2014 +0200
    
    'fixed-port' property is not required by EAP, mark it as such in the plugin descriptor