as7 plugin now in master
by Heiko W.Rupp
Hi,
I have just merged the as7 plugin and the dependent-values branch into master
The plugin is working for me against as7 from their git as of last thursday morning.
I expect that it will work with as7 cr1, which is supposed to be out in the next few days.
See this wiki page about dependent-values:
http://rhq-project.org/display/RHQ/Needed+-+dependent+properties+and+linking
Heiko
--
Reg. Adresse: Red Hat GmbH, Technopark II, Haus C,
Werner-von-Siemens-Ring 14, D-85630 Grasbrunn
Handelsregister: Amtsgericht München HRB 153243
Geschaeftsführer: Brendan Lane, Charlie Peters, Michael Cunningham, Charles Cachera
12 years, 10 months
@NotNull
by Heiko W.Rupp
So I am seeing those errors in server log a lot when e.g. scheduling operations:
Caused by: java.lang.IllegalArgumentException: Argument 0 for @NotNull
parameter of org/rhq/core/domain/resource/Resource.setName must not
be null
at org.rhq.core.domain.resource.Resource.setName(Resource.java)
While I am not sure who or what is adding that crazy check to my classes,
from the following code:
public void setName(@NotNull String name) {
this.name = name;
}
I think as we do obviously have code parts in the Configuration world that seem
to call this setter with a null argument, we should either
- remove that annotation, as reality has proven that it is wrong
or
- fix the code that is calling this setter with a null argument
--
Reg. Adresse: Red Hat GmbH, Technopark II, Haus C,
Werner-von-Siemens-Ring 14, D-85630 Grasbrunn
Handelsregister: Amtsgericht München HRB 153243
Geschaeftsführer: Brendan Lane, Charlie Peters, Michael Cunningham, Charles Cachera
12 years, 10 months
deploying bundle to a single platform
by John Mazzitelli
This email is regarding a convenience feature that some asked about.
Right now, bundle deployments require you to deploy to a group of
resources, not a single resource. In other words, even if you want to
deploy a bundle to a single resource, you still need to have that
resource in a group and deploy to that single-member group.
So the thought is, for demo purposes, or for small production
environments, can we have it where you do not need to create that group
and just deploy to a single resource?
Here's my thoughts.
First, the data model strictly requires bundle deployments to be
associated with groups. Without some major surgery, we can't change the
data model to support groups AND single resources (and all the
server-side business logic that would go along with that).
So, the thinking is, can we just have some convenient way to select a
single resource but then we create a group under the covers and use that
hidden group to do the deployment. Thus freeing up the user from having
to create the group, but still managing to be able to deploy the bundle
using the same implementation we have today.
The problem with that is the UI workflow. I can't think of "convenient"
place to do this, without asking the user to do just as complex a
workflow as he is being asked today.
For example, in the deploy wizard's "create destination" step, we have a
drop down to select a group. We would have to have some kind of other UI
component to select a single resource. Suppose we have that. I select a
resource. What would be the group's name? Whatever group is created will
show up in the list of groups in other places in the UI, so we'd like to
ask the user to name it - but that means we'd have to popup some dialog
box to ask for the name. If that's the case, why don't we just ask him
for the rest of the group info - like description. In fact, this kind of
thing does now exist. Specifically, the deploy wizard provides a "+"
button that actually pops up the full "create group wizard". So here
you can enter the name your new group, provide a description and select
your one resource, hit OK and continue the deploy wizard - your new
group will show up in teh group drop down that you can select (one
enhancement would be for us to pre-populate the group drop down with the
new group you created, I didn't do that but we should).
I suppose we could give it a default name and not popup the group wizard
(thus we create the group under the covers) but I'm not sure how this is
different (from a UI workflow perspective) from popping up the group
wizard. We still need to ask the user for SOMETHING - either they select
the resource from "some" other component in the deploy wizard or they do
so from the group create wizard. Either way, they need to go into some
UI component to select a resource. But without the group wizard, they
have no way of assigning their group their own custom name.
If we assign our own default name under the covers, since the user
doesn't know that we are creating a group, it will seem odd that he sees
this strangely named group that he didn't knowingly create appear in his
group list (say, if he goes to Inventory>AllGroups). And this will only
show up the next time he goes and looks at the group list somewhere
(which may not be for a while yet - so as time passes, he may not
connect or associate his act of deploying the bundle to the existence of
this new group).
So there are two things here I do not like with respect to this request:
1) the UI workflow will not be significantly simpler for the user. The
user will need to select the individual resource from SOMEWHERE. That
somewhere is either in a UI component directly on the deploy wizard or
in the Group Create Wizard.
2) without going through some kind of group-creation workflow (that is,
we create the group under the covers once the user selected the
individual resource), we will be forced to give a default name to this
group we create under the covers. The user will then possibly be
confused later on when he sees this oddly named group in his list of
groups - something in which he didn't create, he didn't name, and quite
possible won't know why it is created.
If we DO ask the user to give us a name, why not popup the group create
wizard itself? Not much different and at least the group create wizard
is a common component the user should be used to and provides more
capability.
Those are my thoughts on the subject. Feel free to chime in. Especially
with ideas on how you think this can be done and make it easier for the
user to deploy to a single resource that is significantly better than
how it works today.
John
12 years, 10 months
Re: REST Api (was Re: Custom UI? )
by Heiko W.Rupp
Hi,
I sat down over the weekend (and some time this morning) to implement a first REST provider.
This code is in git in branch heiko-rest ( http://git.fedorahosted.org/git/?p=rhq/rhq.git;a=shortlog;h=refs/heads/he... ).
The code is *far from production* but serves for bootstrapping the REST api work.
If you want to play with it, you need to run a container build so that the rest libraries get copied to server/default/lib.
Aside from the pure providing of resources , there are two technical issues still to solve:
* accessing resources (e.g. http://localhost:7080/rest/resource/r/10001 ) will result in a LazyLoad exception,
as the marshalling code works outside the EJBs with JPA sessions in the servlet code.
* How to impose security ?
My guess is that both cases could be handled by some sort of Servlet filters. The first case could also be addressed
by "DTOs" tailored for the REST api (but I'd like to use the standard domain objects).
For a successful call use the url http://localhost:7080/rest/resource/a/10001 (assuming you have resources
in inventory).
Heiko
12 years, 10 months
Fwd: Dependent values and linking
by Heiko W.Rupp
I goofed up again when scheduling the meeting and forgot that monday is White Monday
Anfang der weitergeleiteten E-Mail:
> Von: Heiko Rupp <hrupp(a)redhat.com>
> Datum: 11. Juni 2011 09:55:23 MESZ
> Betreff: Dependent values and linking
>
> Der folgende Sitzungstermin wurde geändert:
>
> Betreff: Dependent values and linking
> Organisator: "Heiko Rupp" <hrupp(a)redhat.com>
> Uhrzeit: Dienstag, 14. Juni 2011, 17:00:00 - 18:00:00 GMT +01:00 Amsterdam, Berlin, Bern, Rom, Stockholm, Wien [GEÄNDERT]
> *~*~*~*~*~*~*~*~*~*
>
> Sorry, I goofed up again when scheduling the meeting, as "White Monday" is a public holiday in DE.
> -------
>
> Discussion on irc, #rhq about the design of "Dependent values and linking"
>
> Background information is at http://rhq-project.org/display/RHQ/Needed+-+dependent+properties+and+linking
>
> Topics:
> 1) Use cases
> 2) Overview of the design
> 3) Specific points in coreui to tackle this.
>
> Location: irc://irc.freenode.net/#rhq
--
Reg. Adresse: Red Hat GmbH, Technopark II, Haus C,
Werner-von-Siemens-Ring 14, D-85630 Grasbrunn
Handelsregister: Amtsgericht München HRB 153243
Geschaeftsführer: Brendan Lane, Charlie Peters, Michael Cunningham, Charles Cachera
12 years, 10 months
bz 644328 (non platform bundle deploys) in master
by John Mazzitelli
I just merged my BZ 644328 branch into master - this means master now
has the feature to deploy bundles to non-platforms. Right now, the only
non-platform resource type that supports this is the JBossAS 4 Server
resource type.
Its very easy to add this capability to other plugins, though. Just add
this XML metadata to your resource type definition in a descriptor:
<bundle-target>
<destination-base-dir name="Some Location" description="help text">
<value-context>pluginConfiguration</value-context>
<value-name>some.plugin.property.name</value-name>
</destination-base-dir>
</bundle-target>
We support four types of destinations (that's the value-context) -
pluginConfiguration, resourceConfiguration, measurementTrait and (mainly
for platform plugin) fileSystem. The XML Schema has annotation
documentation to assist in auto-complete (assuming your XML IDE supports
that).
Read the wiki for further explanation:
http://rhq-project.org/display/RHQ/Design-BundleDeploymentToNonPlatforms
12 years, 11 months
new bundle deploy wizard
by John Mazzitelli
[Mainly to Charles, but posting this to the dev group to give them a
feel for what this will look like]
see attached.
I converted the drop down to a set of radio buttons with the text of the
radio buttons to be the name of the base location and a piece of help
text (which comes from the plugin descriptor so today it is not i18n'able).
12 years, 11 months
Fwd: Dependent values and linking
by Heiko W.Rupp
Anfang der weitergeleiteten E-Mail:
> Von: Heiko Rupp <hrupp(a)redhat.com>
> Datum: 10. Juni 2011 21:03:28 MESZ
> Betreff: Dependent values and linking
>
> Neue Sitzungsanfrage:
>
> Betreff: Dependent values and linking
> Organisator: "Heiko Rupp" <hrupp(a)redhat.com>
> Uhrzeit: Montag, 13. Juni 2011, 17:00:00 - 18:00:00 GMT +01:00 Amsterdam, Berlin, Bern, Rom, Stockholm, Wien
> *~*~*~*~*~*~*~*~*~*
>
> Discussion on irc, #rhq about the design of "Dependent values and linking"
>
> Background information is at http://rhq-project.org/display/RHQ/Needed+-+dependent+properties+and+linking
>
> Topics:
> 1) Use cases
> 2) Overview of the design
> 3) Specific points in coreui to tackle this.
>
> Location: irc://irc.freenode.net/#rhq
--
Reg. Adresse: Red Hat GmbH, Technopark II, Haus C,
Werner-von-Siemens-Ring 14, D-85630 Grasbrunn
Handelsregister: Amtsgericht München HRB 153243
Geschaeftsführer: Brendan Lane, Charlie Peters, Michael Cunningham, Charles Cachera
12 years, 11 months
GWT config editor question
by Heiko W.Rupp
Hey,
I am working on the dependent properies and linking idea [1].
In org.rhq.enterprise.gui.coregui.client.components.configuration.ConfigurationEditor#buildSimpleField
the UI is populating dropdowns from a list of stuff, that is passed from the resource config.
Now I'd like to supply values from a different source.
It looks like config definitions are loaded via JPA relation loading when loading ResourceTypes.
So I basically either need to intercept the call or from within the UI code do a callback to resolve
the source (the values are dynamic and could be different each time the user enters the config editor
I could go into the org.rhq.enterprise.gui.coregui.server.gwt.ResourceTypeGWTServiceImpl and
intercept all the calls that return ResourceTypes and change fill the data there, but from how I
understand it, this data wlll be cached, so on a subsequent editor load for the same resource type,
the data would come from the cache.
Do you have an idea here?
[1] http://rhq-project.org/display/RHQ/Needed+-+dependent+properties+and+linking
Thanks
Heiko
12 years, 11 months
JON Plugin for Websphere Configuration
by Bill Pulec
Hi Again,
I am looking for another estimate, but wanted to create a separate thread as it is being considered semi-independently of the other part. We are also looking to have JON configure various aspects of Websphere, mostly configurations that are stored in xml files that are application dependent(i.e. web.xml). We would need JON to be able to read these settings to be viewed by an admin and be able to alter them. Again WAS would then need to be restarted via JON.
Bill Pulec
Amentra Inc., a Red Hat Company
101 N. Wacker, Suite 150
Chicago, IL 60606
Bill.Pulec(a)Amentra.com<mailto:Bill.Pulec@Amentra.com> | c. (920)606-2554
12 years, 11 months