talk@lists.collectionspace.org

WE HAVE SUNSET THIS LISTSERV - Join us at collectionspace@lyrasislists.org

View all threads

Re: [Talk] Collection Object vocabularies not populating UI

CN
Chad Nelson
Wed, Apr 1, 2015 7:33 PM

Hi Rick,

Well, I added the option tag to the one that was missing it, but it did not fill in the rest of the options from the vocab.

I was definitely trying to point to a vocabulary instance, vocab-contentworktype, in an overridden base-instance-vocabularies.xml file.
https://github.com/CollectionSpace-Deployments/application/blob/mmi-cataloging/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml#L324

They are local extension fields with local extension vocabularies.

I was following the example from default base-collectionobject.xml, specifically the contentLanguages field:

https://github.com/collectionspace/application/blob/master/tomcat-main/src/main/resources/defaults/base-collectionobject.xml#L399-L405

I've also added the default enum and blankvalue tags, but again, not filling in the options list.

Chad


From: Rick Jaffe rjaffe@berkeley.edu
Sent: Tuesday, March 31, 2015 7:18 PM
To: Chad Nelson
Cc: Ray Lee
Subject: Re: [Talk] Collection Object vocabularies not populating UI

Chad,

It's been a while since I looked at CSpace config, so I may be way off base, but I see one thing that seems wrong about the UI config for contentWorkType: your HTML is missing the <option value=">Options not loaded</option> tag set.

Either that, or it's incorrectly pointing at the vocab-worktype instance in base-instance-vocabularies.xmlhttps://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml. Your note makes it seem as if you were trying to display an authority, rather than a vocabulary instance. Did you mean to point to either vocab-genre or vocab-medium in mmi-authority-work.xmlhttps://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-authority-work.xml?

Rick

On Tue, Mar 31, 2015 at 1:09 PM, Chad Nelson <chad.nelson@lyrasis.orgmailto:chad.nelson@lyrasis.org> wrote:

Hi Ray,

Yeah, on each iteration I'm clearing the browser cache. Also dropping the DBs and recreating to flush out any data.

Chad


From: Ray Lee <rhlee@berkeley.edumailto:rhlee@berkeley.edu>
Sent: Tuesday, March 31, 2015 3:38 PM
To: Chad Nelson
Cc: talk@lists.collectionspace.orgmailto:talk@lists.collectionspace.org
Subject: Re: [Talk] Collection Object vocabularies not populating UI

Hi Chad,
Have you tried clearing your browser cache?

Ray

On Tue, Mar 31, 2015 at 12:08 PM, Chad Nelson <chad.nelson@lyrasis.orgmailto:chad.nelson@lyrasis.org> wrote:

Hi All,

Thanks to Jesse for pointing out some errant closing brackets in my app layer config. Fixed those, but, unfortunately, the problem of fields not being populated with the vocabulary on inline data persists.

Chad


From: Talk <talk-bounces@lists.collectionspace.orgmailto:talk-bounces@lists.collectionspace.org> on behalf of Chad Nelson <chad.nelson@lyrasis.orgmailto:chad.nelson@lyrasis.org>
Sent: Tuesday, March 31, 2015 11:45 AM
To: talk@lists.collectionspace.orgmailto:talk@lists.collectionspace.org
Subject: [Talk] Collection Object vocabularies not populating UI

Hi All,

I'm doing a bit of work adding local fields to collection object form.

While all the new fields I have added are appearing on the Cataloging Form, the select elements for are not being populated with options from vocabulary instances, nor with options defined in the App layer field definition. I've tried with and without custom selectors (since many of the collection-object fields seem to have custom selectors) but it has not helped.

The vocabulary terms have been initialized and can be retrieved via the cspace-service/vocabularies service endpoint, so they are are making it into the db.

Two examples:

Adding field contentWorkType

app: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18

vocab: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18

ui: https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L373

Adding field ContentEntityType

app: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L39-L48

ui: https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L344

Also, I have successfully added fields with vocab lookups in other procedure forms, so generally it does work, just not in this instance.

Any ideas on what could be causing the issue? I've searched through the logs but haven't found anything indicating what the error could be, so any help would be greatly appreciated.

Thanks,

Chad


Talk mailing list
Talk@lists.collectionspace.orgmailto:Talk@lists.collectionspace.org
http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org


Talk mailing list
Talk@lists.collectionspace.orgmailto:Talk@lists.collectionspace.org
http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org

Hi Rick, Well, I added the option tag to the one that was missing it, but it did not fill in the rest of the options from the vocab. I was definitely trying to point to a vocabulary instance, vocab-contentworktype, in an overridden base-instance-vocabularies.xml file. https://github.com/CollectionSpace-Deployments/application/blob/mmi-cataloging/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml#L324 They are local extension fields with local extension vocabularies. I was following the example from default base-collectionobject.xml, specifically the contentLanguages field: https://github.com/collectionspace/application/blob/master/tomcat-main/src/main/resources/defaults/base-collectionobject.xml#L399-L405 I've also added the default enum and blankvalue tags, but again, not filling in the options list. Chad ________________________________ From: Rick Jaffe <rjaffe@berkeley.edu> Sent: Tuesday, March 31, 2015 7:18 PM To: Chad Nelson Cc: Ray Lee Subject: Re: [Talk] Collection Object vocabularies not populating UI Chad, It's been a while since I looked at CSpace config, so I may be way off base, but I see one thing that seems wrong about the UI config for contentWorkType: your HTML is missing the <option value=">Options not loaded</option> tag set. Either that, or it's incorrectly pointing at the vocab-worktype instance in base-instance-vocabularies.xml<https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml>. Your note makes it seem as if you were trying to display an authority, rather than a vocabulary instance. Did you mean to point to either vocab-genre or vocab-medium in mmi-authority-work.xml<https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-authority-work.xml>? Rick On Tue, Mar 31, 2015 at 1:09 PM, Chad Nelson <chad.nelson@lyrasis.org<mailto:chad.nelson@lyrasis.org>> wrote: Hi Ray, Yeah, on each iteration I'm clearing the browser cache. Also dropping the DBs and recreating to flush out any data. Chad ________________________________ From: Ray Lee <rhlee@berkeley.edu<mailto:rhlee@berkeley.edu>> Sent: Tuesday, March 31, 2015 3:38 PM To: Chad Nelson Cc: talk@lists.collectionspace.org<mailto:talk@lists.collectionspace.org> Subject: Re: [Talk] Collection Object vocabularies not populating UI Hi Chad, Have you tried clearing your browser cache? Ray On Tue, Mar 31, 2015 at 12:08 PM, Chad Nelson <chad.nelson@lyrasis.org<mailto:chad.nelson@lyrasis.org>> wrote: Hi All, Thanks to Jesse for pointing out some errant closing brackets in my app layer config. Fixed those, but, unfortunately, the problem of fields not being populated with the vocabulary on inline data persists. Chad ________________________________ From: Talk <talk-bounces@lists.collectionspace.org<mailto:talk-bounces@lists.collectionspace.org>> on behalf of Chad Nelson <chad.nelson@lyrasis.org<mailto:chad.nelson@lyrasis.org>> Sent: Tuesday, March 31, 2015 11:45 AM To: talk@lists.collectionspace.org<mailto:talk@lists.collectionspace.org> Subject: [Talk] Collection Object vocabularies not populating UI Hi All, I'm doing a bit of work adding local fields to collection object form. While all the new fields I have added are appearing on the Cataloging Form, the select elements for are not being populated with options from vocabulary instances, nor with options defined in the App layer field definition. I've tried with and without custom selectors (since many of the collection-object fields seem to have custom selectors) but it has not helped. The vocabulary terms have been initialized and can be retrieved via the `cspace-service/vocabularies` service endpoint, so they are are making it into the db. Two examples: Adding field contentWorkType app: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18 vocab: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18 ui: https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L373 Adding field ContentEntityType app: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L39-L48 ui: https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L344 Also, I have successfully added fields with vocab lookups in other procedure forms, so generally it does work, just not in this instance. Any ideas on what could be causing the issue? I've searched through the logs but haven't found anything indicating what the error could be, so any help would be greatly appreciated. Thanks, Chad _______________________________________________ Talk mailing list Talk@lists.collectionspace.org<mailto:Talk@lists.collectionspace.org> http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org _______________________________________________ Talk mailing list Talk@lists.collectionspace.org<mailto:Talk@lists.collectionspace.org> http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org
RL
Ray Lee
Wed, Apr 1, 2015 7:50 PM

Hi Chad,
Here's how I would debug this:
Download the uispec for the record:
/collectionspace/tenant/core/cataloging/uispec

Search for the name of your field in the recordEditor object. There should
be a label, and a field definition, both keyed by the class name that you
should be using in the HTML. Do they match what you have in the HTML
template?

I'm guessing they don't, because your selector in the app layer is
object-description-contentWorkType (no dashes in contentWorkType), but your
class name in the HTML is csc-object-description-content-work-type.

The fields in question probably don't get saved, which would also be a good
sign that you have the class name wrong in the HTML.

Ray

On Wed, Apr 1, 2015 at 12:33 PM, Chad Nelson chad.nelson@lyrasis.org
wrote:

Hi Rick,

Well, I added the option tag to the one that was missing it, but it did
not fill in the rest of the options from the vocab.

I was definitely trying to point to a vocabulary instance,
vocab-contentworktype, in an overridden base-instance-vocabularies.xml file.

https://github.com/CollectionSpace-Deployments/application/blob/mmi-cataloging/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml#L324

They are local extension fields with local extension vocabularies.

I was following the example from default base-collectionobject.xml,
specifically the contentLanguages field:

https://github.com/collectionspace/application/blob/master/tomcat-main/src/main/resources/defaults/base-collectionobject.xml#L399-L405

I've also added the default enum and blankvalue tags, but again, not
filling in the options list.

Chad


From: Rick Jaffe rjaffe@berkeley.edu
Sent: Tuesday, March 31, 2015 7:18 PM
To: Chad Nelson
Cc: Ray Lee

Subject: Re: [Talk] Collection Object vocabularies not populating UI

Chad,

It's been a while since I looked at CSpace config, so I may be way off
base, but I see one thing that seems wrong about the UI config for
contentWorkType: your HTML is missing the <option value=">Options not
loaded</option> tag set.

Either that, or it's incorrectly pointing at the vocab-worktype instance
in base-instance-vocabularies.xml
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml.
Your note makes it seem as if you were trying to display an authority,
rather than a vocabulary instance. Did you mean to point to either
vocab-genre or vocab-medium in mmi-authority-work.xml
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-authority-work.xml
?

Rick

On Tue, Mar 31, 2015 at 1:09 PM, Chad Nelson chad.nelson@lyrasis.org
wrote:

Hi Ray,

Yeah, on each iteration I'm clearing the browser cache. Also dropping
the DBs and recreating to flush out any data.

Chad


From: Ray Lee rhlee@berkeley.edu
Sent: Tuesday, March 31, 2015 3:38 PM
To: Chad Nelson
Cc: talk@lists.collectionspace.org
Subject: Re: [Talk] Collection Object vocabularies not populating UI

Hi Chad,
Have you tried clearing your browser cache?

Ray

On Tue, Mar 31, 2015 at 12:08 PM, Chad Nelson chad.nelson@lyrasis.org
wrote:

Hi All,

Thanks to Jesse for pointing out some errant closing brackets in my
app layer config. Fixed those, but, unfortunately, the problem of fields
not being populated with the vocabulary on inline data persists.

Chad


From: Talk talk-bounces@lists.collectionspace.org on behalf of Chad
Nelson chad.nelson@lyrasis.org
Sent: Tuesday, March 31, 2015 11:45 AM
To: talk@lists.collectionspace.org
Subject: [Talk] Collection Object vocabularies not populating UI

Hi All,

I'm doing a bit of work adding local fields to collection object form.

While all the new fields I have added are appearing on the Cataloging
Form, the select elements for are not being populated with options from
vocabulary instances, nor with options defined in the App layer field
definition. I've tried with and without custom selectors (since many of the
collection-object fields seem to have custom selectors) but it has not
helped.

The vocabulary terms have been initialized and can be retrieved via
the cspace-service/vocabularies service endpoint, so they are are making
it into the db.

Two examples:

Adding field contentWorkType

app:
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18

vocab:
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18

ui:
https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L373

Adding field ContentEntityType

app:
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L39-L48

ui:
https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L344

Also, I have successfully added fields with vocab lookups in other
procedure forms, so generally it does work, just not in this instance.

Any ideas on what could be causing the issue? I've searched through
the logs but haven't found anything indicating what the error could be, so
any help would be greatly appreciated.

Thanks,

Chad


Talk mailing list
Talk@lists.collectionspace.org

http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org

Hi Chad, Here's how I would debug this: Download the uispec for the record: /collectionspace/tenant/core/cataloging/uispec Search for the name of your field in the recordEditor object. There should be a label, and a field definition, both keyed by the class name that you should be using in the HTML. Do they match what you have in the HTML template? I'm guessing they don't, because your selector in the app layer is object-description-contentWorkType (no dashes in contentWorkType), but your class name in the HTML is csc-object-description-content-work-type. The fields in question probably don't get saved, which would also be a good sign that you have the class name wrong in the HTML. Ray On Wed, Apr 1, 2015 at 12:33 PM, Chad Nelson <chad.nelson@lyrasis.org> wrote: > > Hi Rick, > > Well, I added the option tag to the one that was missing it, but it did > not fill in the rest of the options from the vocab. > > I was definitely trying to point to a vocabulary instance, > vocab-contentworktype, in an overridden base-instance-vocabularies.xml file. > > https://github.com/CollectionSpace-Deployments/application/blob/mmi-cataloging/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml#L324 > > > They are local extension fields with local extension vocabularies. > > > I was following the example from default base-collectionobject.xml, > specifically the contentLanguages field: > > > https://github.com/collectionspace/application/blob/master/tomcat-main/src/main/resources/defaults/base-collectionobject.xml#L399-L405 > > I've also added the default enum and blankvalue tags, but again, not > filling in the options list. > > Chad > > > ------------------------------ > *From:* Rick Jaffe <rjaffe@berkeley.edu> > *Sent:* Tuesday, March 31, 2015 7:18 PM > *To:* Chad Nelson > *Cc:* Ray Lee > > *Subject:* Re: [Talk] Collection Object vocabularies not populating UI > > Chad, > > It's been a while since I looked at CSpace config, so I may be way off > base, but I see one thing that seems wrong about the UI config for > contentWorkType: your HTML is missing the <option value=">Options not > loaded</option> tag set. > > Either that, or it's incorrectly pointing at the vocab-worktype instance > in base-instance-vocabularies.xml > <https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml>. > Your note makes it seem as if you were trying to display an authority, > rather than a vocabulary instance. Did you mean to point to either > vocab-genre or vocab-medium in mmi-authority-work.xml > <https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-authority-work.xml> > ? > > Rick > > > On Tue, Mar 31, 2015 at 1:09 PM, Chad Nelson <chad.nelson@lyrasis.org> > wrote: > >> Hi Ray, >> >> >> Yeah, on each iteration I'm clearing the browser cache. Also dropping >> the DBs and recreating to flush out any data. >> >> >> Chad >> >> >> ------------------------------ >> *From:* Ray Lee <rhlee@berkeley.edu> >> *Sent:* Tuesday, March 31, 2015 3:38 PM >> *To:* Chad Nelson >> *Cc:* talk@lists.collectionspace.org >> *Subject:* Re: [Talk] Collection Object vocabularies not populating UI >> >> Hi Chad, >> Have you tried clearing your browser cache? >> >> Ray >> >> On Tue, Mar 31, 2015 at 12:08 PM, Chad Nelson <chad.nelson@lyrasis.org> >> wrote: >> >>> >>> Hi All, >>> >>> Thanks to Jesse for pointing out some errant closing brackets in my >>> app layer config. Fixed those, but, unfortunately, the problem of fields >>> not being populated with the vocabulary on inline data persists. >>> >>> Chad >>> >>> ------------------------------ >>> *From:* Talk <talk-bounces@lists.collectionspace.org> on behalf of Chad >>> Nelson <chad.nelson@lyrasis.org> >>> *Sent:* Tuesday, March 31, 2015 11:45 AM >>> *To:* talk@lists.collectionspace.org >>> *Subject:* [Talk] Collection Object vocabularies not populating UI >>> >>> >>> Hi All, >>> >>> >>> I'm doing a bit of work adding local fields to collection object form. >>> >>> >>> While all the new fields I have added are appearing on the Cataloging >>> Form, the select elements for are not being populated with options from >>> vocabulary instances, nor with options defined in the App layer field >>> definition. I've tried with and without custom selectors (since many of the >>> collection-object fields seem to have custom selectors) but it has not >>> helped. >>> >>> >>> The vocabulary terms have been initialized and can be retrieved via >>> the `cspace-service/vocabularies` service endpoint, so they are are making >>> it into the db. >>> >>> >>> Two examples: >>> >>> Adding field contentWorkType >>> >>> >>> app: >>> https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18 >>> >>> >>> vocab: >>> https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18 >>> >>> >>> ui: >>> https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L373 >>> >>> >>> Adding field ContentEntityType >>> >>> >>> app: >>> https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L39-L48 >>> >>> >>> ui: >>> https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L344 >>> >>> >>> Also, I have successfully added fields with vocab lookups in other >>> procedure forms, so generally it does work, just not in this instance. >>> >>> >>> Any ideas on what could be causing the issue? I've searched through >>> the logs but haven't found anything indicating what the error could be, so >>> any help would be greatly appreciated. >>> >>> >>> Thanks, >>> >>> Chad >>> >>> >>> >>> >>> _______________________________________________ >>> Talk mailing list >>> Talk@lists.collectionspace.org >>> >>> http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org >>> >>> >> >> _______________________________________________ >> Talk mailing list >> Talk@lists.collectionspace.org >> >> http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org >> >> >
RL
Ray Lee
Wed, Apr 1, 2015 7:55 PM

Also: You probably thought you had the class name right, because the field
label showed up correctly, but note that when you define a <selector> in
the app layer, it changes the class name you have to use on the field
itself, but it does not change the class name you have to use on the label,
so they become inconsistent. I never use <selector>, because it leads to
trouble like this. I've never come across a good reason to use it.

Ray

On Wed, Apr 1, 2015 at 12:50 PM, Ray Lee rhlee@berkeley.edu wrote:

Hi Chad,
Here's how I would debug this:
Download the uispec for the record:
/collectionspace/tenant/core/cataloging/uispec

Search for the name of your field in the recordEditor object. There
should be a label, and a field definition, both keyed by the class name
that you should be using in the HTML. Do they match what you have in the
HTML template?

I'm guessing they don't, because your selector in the app layer is
object-description-contentWorkType (no dashes in contentWorkType), but
your class name in the HTML is csc-object-description-content-work-type.

The fields in question probably don't get saved, which would also be a
good sign that you have the class name wrong in the HTML.

Ray

On Wed, Apr 1, 2015 at 12:33 PM, Chad Nelson chad.nelson@lyrasis.org
wrote:

Hi Rick,

Well, I added the option tag to the one that was missing it, but it did
not fill in the rest of the options from the vocab.

I was definitely trying to point to a vocabulary instance,
vocab-contentworktype, in an overridden base-instance-vocabularies.xml file.

https://github.com/CollectionSpace-Deployments/application/blob/mmi-cataloging/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml#L324

They are local extension fields with local extension vocabularies.

I was following the example from default base-collectionobject.xml,
specifically the contentLanguages field:

https://github.com/collectionspace/application/blob/master/tomcat-main/src/main/resources/defaults/base-collectionobject.xml#L399-L405

I've also added the default enum and blankvalue tags, but again, not
filling in the options list.

Chad


From: Rick Jaffe rjaffe@berkeley.edu
Sent: Tuesday, March 31, 2015 7:18 PM
To: Chad Nelson
Cc: Ray Lee

Subject: Re: [Talk] Collection Object vocabularies not populating UI

Chad,

It's been a while since I looked at CSpace config, so I may be way off
base, but I see one thing that seems wrong about the UI config for
contentWorkType: your HTML is missing the <option value=">Options not
loaded</option> tag set.

Either that, or it's incorrectly pointing at the vocab-worktype instance
in base-instance-vocabularies.xml
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml.
Your note makes it seem as if you were trying to display an authority,
rather than a vocabulary instance. Did you mean to point to either
vocab-genre or vocab-medium in mmi-authority-work.xml
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-authority-work.xml
?

Rick

On Tue, Mar 31, 2015 at 1:09 PM, Chad Nelson chad.nelson@lyrasis.org
wrote:

Hi Ray,

Yeah, on each iteration I'm clearing the browser cache. Also dropping
the DBs and recreating to flush out any data.

Chad


From: Ray Lee rhlee@berkeley.edu
Sent: Tuesday, March 31, 2015 3:38 PM
To: Chad Nelson
Cc: talk@lists.collectionspace.org
Subject: Re: [Talk] Collection Object vocabularies not populating UI

Hi Chad,
Have you tried clearing your browser cache?

Ray

On Tue, Mar 31, 2015 at 12:08 PM, Chad Nelson chad.nelson@lyrasis.org
wrote:

Hi All,

Thanks to Jesse for pointing out some errant closing brackets in my
app layer config. Fixed those, but, unfortunately, the problem of fields
not being populated with the vocabulary on inline data persists.

Chad


From: Talk talk-bounces@lists.collectionspace.org on behalf of
Chad Nelson chad.nelson@lyrasis.org
Sent: Tuesday, March 31, 2015 11:45 AM
To: talk@lists.collectionspace.org
Subject: [Talk] Collection Object vocabularies not populating UI

Hi All,

I'm doing a bit of work adding local fields to collection object
form.

While all the new fields I have added are appearing on the Cataloging
Form, the select elements for are not being populated with options from
vocabulary instances, nor with options defined in the App layer field
definition. I've tried with and without custom selectors (since many of the
collection-object fields seem to have custom selectors) but it has not
helped.

The vocabulary terms have been initialized and can be retrieved via
the cspace-service/vocabularies service endpoint, so they are are making
it into the db.

Two examples:

Adding field contentWorkType

app:
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18

vocab:
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18

ui:
https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L373

Adding field ContentEntityType

app:
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L39-L48

ui:
https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L344

Also, I have successfully added fields with vocab lookups in other
procedure forms, so generally it does work, just not in this instance.

Any ideas on what could be causing the issue? I've searched through
the logs but haven't found anything indicating what the error could be, so
any help would be greatly appreciated.

Thanks,

Chad


Talk mailing list
Talk@lists.collectionspace.org

http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org

Also: You probably thought you had the class name right, because the field label showed up correctly, but note that when you define a <selector> in the app layer, it changes the class name you have to use on the field itself, but it does not change the class name you have to use on the label, so they become inconsistent. I never use <selector>, because it leads to trouble like this. I've never come across a good reason to use it. Ray On Wed, Apr 1, 2015 at 12:50 PM, Ray Lee <rhlee@berkeley.edu> wrote: > Hi Chad, > Here's how I would debug this: > Download the uispec for the record: > /collectionspace/tenant/core/cataloging/uispec > > Search for the name of your field in the recordEditor object. There > should be a label, and a field definition, both keyed by the class name > that you should be using in the HTML. Do they match what you have in the > HTML template? > > I'm guessing they don't, because your selector in the app layer is > object-description-contentWorkType (no dashes in contentWorkType), but > your class name in the HTML is csc-object-description-content-work-type. > > The fields in question probably don't get saved, which would also be a > good sign that you have the class name wrong in the HTML. > > Ray > > > On Wed, Apr 1, 2015 at 12:33 PM, Chad Nelson <chad.nelson@lyrasis.org> > wrote: > >> >> Hi Rick, >> >> Well, I added the option tag to the one that was missing it, but it did >> not fill in the rest of the options from the vocab. >> >> I was definitely trying to point to a vocabulary instance, >> vocab-contentworktype, in an overridden base-instance-vocabularies.xml file. >> >> https://github.com/CollectionSpace-Deployments/application/blob/mmi-cataloging/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml#L324 >> >> >> They are local extension fields with local extension vocabularies. >> >> >> I was following the example from default base-collectionobject.xml, >> specifically the contentLanguages field: >> >> >> https://github.com/collectionspace/application/blob/master/tomcat-main/src/main/resources/defaults/base-collectionobject.xml#L399-L405 >> >> I've also added the default enum and blankvalue tags, but again, not >> filling in the options list. >> >> Chad >> >> >> ------------------------------ >> *From:* Rick Jaffe <rjaffe@berkeley.edu> >> *Sent:* Tuesday, March 31, 2015 7:18 PM >> *To:* Chad Nelson >> *Cc:* Ray Lee >> >> *Subject:* Re: [Talk] Collection Object vocabularies not populating UI >> >> Chad, >> >> It's been a while since I looked at CSpace config, so I may be way off >> base, but I see one thing that seems wrong about the UI config for >> contentWorkType: your HTML is missing the <option value=">Options not >> loaded</option> tag set. >> >> Either that, or it's incorrectly pointing at the vocab-worktype instance >> in base-instance-vocabularies.xml >> <https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml>. >> Your note makes it seem as if you were trying to display an authority, >> rather than a vocabulary instance. Did you mean to point to either >> vocab-genre or vocab-medium in mmi-authority-work.xml >> <https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-authority-work.xml> >> ? >> >> Rick >> >> >> On Tue, Mar 31, 2015 at 1:09 PM, Chad Nelson <chad.nelson@lyrasis.org> >> wrote: >> >>> Hi Ray, >>> >>> >>> Yeah, on each iteration I'm clearing the browser cache. Also dropping >>> the DBs and recreating to flush out any data. >>> >>> >>> Chad >>> >>> >>> ------------------------------ >>> *From:* Ray Lee <rhlee@berkeley.edu> >>> *Sent:* Tuesday, March 31, 2015 3:38 PM >>> *To:* Chad Nelson >>> *Cc:* talk@lists.collectionspace.org >>> *Subject:* Re: [Talk] Collection Object vocabularies not populating UI >>> >>> Hi Chad, >>> Have you tried clearing your browser cache? >>> >>> Ray >>> >>> On Tue, Mar 31, 2015 at 12:08 PM, Chad Nelson <chad.nelson@lyrasis.org> >>> wrote: >>> >>>> >>>> Hi All, >>>> >>>> Thanks to Jesse for pointing out some errant closing brackets in my >>>> app layer config. Fixed those, but, unfortunately, the problem of fields >>>> not being populated with the vocabulary on inline data persists. >>>> >>>> Chad >>>> >>>> ------------------------------ >>>> *From:* Talk <talk-bounces@lists.collectionspace.org> on behalf of >>>> Chad Nelson <chad.nelson@lyrasis.org> >>>> *Sent:* Tuesday, March 31, 2015 11:45 AM >>>> *To:* talk@lists.collectionspace.org >>>> *Subject:* [Talk] Collection Object vocabularies not populating UI >>>> >>>> >>>> Hi All, >>>> >>>> >>>> I'm doing a bit of work adding local fields to collection object >>>> form. >>>> >>>> >>>> While all the new fields I have added are appearing on the Cataloging >>>> Form, the select elements for are not being populated with options from >>>> vocabulary instances, nor with options defined in the App layer field >>>> definition. I've tried with and without custom selectors (since many of the >>>> collection-object fields seem to have custom selectors) but it has not >>>> helped. >>>> >>>> >>>> The vocabulary terms have been initialized and can be retrieved via >>>> the `cspace-service/vocabularies` service endpoint, so they are are making >>>> it into the db. >>>> >>>> >>>> Two examples: >>>> >>>> Adding field contentWorkType >>>> >>>> >>>> app: >>>> https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18 >>>> >>>> >>>> vocab: >>>> https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18 >>>> >>>> >>>> ui: >>>> https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L373 >>>> >>>> >>>> Adding field ContentEntityType >>>> >>>> >>>> app: >>>> https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L39-L48 >>>> >>>> >>>> ui: >>>> https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L344 >>>> >>>> >>>> Also, I have successfully added fields with vocab lookups in other >>>> procedure forms, so generally it does work, just not in this instance. >>>> >>>> >>>> Any ideas on what could be causing the issue? I've searched through >>>> the logs but haven't found anything indicating what the error could be, so >>>> any help would be greatly appreciated. >>>> >>>> >>>> Thanks, >>>> >>>> Chad >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> Talk mailing list >>>> Talk@lists.collectionspace.org >>>> >>>> http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org >>>> >>>> >>> >>> _______________________________________________ >>> Talk mailing list >>> Talk@lists.collectionspace.org >>> >>> http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org >>> >>> >> >
AR
Aron Roberts
Wed, Apr 1, 2015 8:11 PM

Thanks, Ray! This debugging example is really helpful!

I've been looking around the wiki-based docs, and this seems like a wildly
under-documented area right now. So far, Chad, the closest I could find is
this:

http://wiki.collectionspace.org/display/collectionspace/Guidelines+for+Bug+Triage#GuidelinesforBugTriage-GuidelinesforBugTriage-Urlsandhowtheyareusefultoyou

This briefly documents the 'uispec' call that Ray described, as follows:

/collectionspace/tenant/{tenantname}/{recordid}/uispec

  • This is the file that helps match the UI field selectors with the
    Service names for fields. If a particular field isn't saving data the first
    thing to do is look in here and see what the selector should be for that
    field and then seeing if that selector exists on the UI html page.

(Ray - and all: are there any other documentation resources you might
recommend around this? And Chad - and all: I'm thinking that a guide to
troubleshooting implementation configuration might be helpful here,
especially one with examples. Thoughts are welcomed!)

Thanks!
Aron

On Wed, Apr 1, 2015 at 12:50 PM, Ray Lee rhlee@berkeley.edu wrote:

Hi Chad,
Here's how I would debug this:
Download the uispec for the record:
/collectionspace/tenant/core/cataloging/uispec

Search for the name of your field in the recordEditor object. There
should be a label, and a field definition, both keyed by the class name
that you should be using in the HTML. Do they match what you have in the
HTML template?

I'm guessing they don't, because your selector in the app layer is
object-description-contentWorkType (no dashes in contentWorkType), but
your class name in the HTML is csc-object-description-content-work-type.

The fields in question probably don't get saved, which would also be a
good sign that you have the class name wrong in the HTML.

Ray

On Wed, Apr 1, 2015 at 12:33 PM, Chad Nelson chad.nelson@lyrasis.org
wrote:

Hi Rick,

Well, I added the option tag to the one that was missing it, but it did
not fill in the rest of the options from the vocab.

I was definitely trying to point to a vocabulary instance,
vocab-contentworktype, in an overridden base-instance-vocabularies.xml file.

https://github.com/CollectionSpace-Deployments/application/blob/mmi-cataloging/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml#L324

They are local extension fields with local extension vocabularies.

I was following the example from default base-collectionobject.xml,
specifically the contentLanguages field:

https://github.com/collectionspace/application/blob/master/tomcat-main/src/main/resources/defaults/base-collectionobject.xml#L399-L405

I've also added the default enum and blankvalue tags, but again, not
filling in the options list.

Chad


From: Rick Jaffe rjaffe@berkeley.edu
Sent: Tuesday, March 31, 2015 7:18 PM
To: Chad Nelson
Cc: Ray Lee

Subject: Re: [Talk] Collection Object vocabularies not populating UI

Chad,

It's been a while since I looked at CSpace config, so I may be way off
base, but I see one thing that seems wrong about the UI config for
contentWorkType: your HTML is missing the <option value=">Options not
loaded</option> tag set.

Either that, or it's incorrectly pointing at the vocab-worktype instance
in base-instance-vocabularies.xml
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml.
Your note makes it seem as if you were trying to display an authority,
rather than a vocabulary instance. Did you mean to point to either
vocab-genre or vocab-medium in mmi-authority-work.xml
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-authority-work.xml
?

Rick

On Tue, Mar 31, 2015 at 1:09 PM, Chad Nelson chad.nelson@lyrasis.org
wrote:

Hi Ray,

Yeah, on each iteration I'm clearing the browser cache. Also dropping
the DBs and recreating to flush out any data.

Chad


From: Ray Lee rhlee@berkeley.edu
Sent: Tuesday, March 31, 2015 3:38 PM
To: Chad Nelson
Cc: talk@lists.collectionspace.org
Subject: Re: [Talk] Collection Object vocabularies not populating UI

Hi Chad,
Have you tried clearing your browser cache?

Ray

On Tue, Mar 31, 2015 at 12:08 PM, Chad Nelson chad.nelson@lyrasis.org
wrote:

Hi All,

Thanks to Jesse for pointing out some errant closing brackets in my
app layer config. Fixed those, but, unfortunately, the problem of fields
not being populated with the vocabulary on inline data persists.

Chad


From: Talk talk-bounces@lists.collectionspace.org on behalf of
Chad Nelson chad.nelson@lyrasis.org
Sent: Tuesday, March 31, 2015 11:45 AM
To: talk@lists.collectionspace.org
Subject: [Talk] Collection Object vocabularies not populating UI

Hi All,

I'm doing a bit of work adding local fields to collection object
form.

While all the new fields I have added are appearing on the Cataloging
Form, the select elements for are not being populated with options from
vocabulary instances, nor with options defined in the App layer field
definition. I've tried with and without custom selectors (since many of the
collection-object fields seem to have custom selectors) but it has not
helped.

The vocabulary terms have been initialized and can be retrieved via
the cspace-service/vocabularies service endpoint, so they are are making
it into the db.

Two examples:

Adding field contentWorkType

app:
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18

vocab:
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18

ui:
https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L373

Adding field ContentEntityType

app:
https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L39-L48

ui:
https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L344

Also, I have successfully added fields with vocab lookups in other
procedure forms, so generally it does work, just not in this instance.

Any ideas on what could be causing the issue? I've searched through
the logs but haven't found anything indicating what the error could be, so
any help would be greatly appreciated.

Thanks,

Chad


Talk mailing list
Talk@lists.collectionspace.org

http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org

Thanks, Ray! This debugging example is really helpful! I've been looking around the wiki-based docs, and this seems like a wildly under-documented area right now. So far, Chad, the closest I could find is this: http://wiki.collectionspace.org/display/collectionspace/Guidelines+for+Bug+Triage#GuidelinesforBugTriage-GuidelinesforBugTriage-Urlsandhowtheyareusefultoyou This briefly documents the 'uispec' call that Ray described, as follows: /collectionspace/tenant/{tenantname}/{recordid}/uispec - This is the file that helps match the UI field selectors with the Service names for fields. If a particular field isn't saving data the first thing to do is look in here and see what the selector should be for that field and then seeing if that selector exists on the UI html page. (Ray - and all: are there any other documentation resources you might recommend around this? And Chad - and all: I'm thinking that a guide to troubleshooting implementation configuration might be helpful here, especially one with examples. Thoughts are welcomed!) Thanks! Aron On Wed, Apr 1, 2015 at 12:50 PM, Ray Lee <rhlee@berkeley.edu> wrote: > Hi Chad, > Here's how I would debug this: > Download the uispec for the record: > /collectionspace/tenant/core/cataloging/uispec > > Search for the name of your field in the recordEditor object. There > should be a label, and a field definition, both keyed by the class name > that you should be using in the HTML. Do they match what you have in the > HTML template? > > I'm guessing they don't, because your selector in the app layer is > object-description-contentWorkType (no dashes in contentWorkType), but > your class name in the HTML is csc-object-description-content-work-type. > > The fields in question probably don't get saved, which would also be a > good sign that you have the class name wrong in the HTML. > > Ray > > > On Wed, Apr 1, 2015 at 12:33 PM, Chad Nelson <chad.nelson@lyrasis.org> > wrote: > >> >> Hi Rick, >> >> Well, I added the option tag to the one that was missing it, but it did >> not fill in the rest of the options from the vocab. >> >> I was definitely trying to point to a vocabulary instance, >> vocab-contentworktype, in an overridden base-instance-vocabularies.xml file. >> >> https://github.com/CollectionSpace-Deployments/application/blob/mmi-cataloging/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml#L324 >> >> >> They are local extension fields with local extension vocabularies. >> >> >> I was following the example from default base-collectionobject.xml, >> specifically the contentLanguages field: >> >> >> https://github.com/collectionspace/application/blob/master/tomcat-main/src/main/resources/defaults/base-collectionobject.xml#L399-L405 >> >> I've also added the default enum and blankvalue tags, but again, not >> filling in the options list. >> >> Chad >> >> >> ------------------------------ >> *From:* Rick Jaffe <rjaffe@berkeley.edu> >> *Sent:* Tuesday, March 31, 2015 7:18 PM >> *To:* Chad Nelson >> *Cc:* Ray Lee >> >> *Subject:* Re: [Talk] Collection Object vocabularies not populating UI >> >> Chad, >> >> It's been a while since I looked at CSpace config, so I may be way off >> base, but I see one thing that seems wrong about the UI config for >> contentWorkType: your HTML is missing the <option value=">Options not >> loaded</option> tag set. >> >> Either that, or it's incorrectly pointing at the vocab-worktype instance >> in base-instance-vocabularies.xml >> <https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml>. >> Your note makes it seem as if you were trying to display an authority, >> rather than a vocabulary instance. Did you mean to point to either >> vocab-genre or vocab-medium in mmi-authority-work.xml >> <https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-authority-work.xml> >> ? >> >> Rick >> >> >> On Tue, Mar 31, 2015 at 1:09 PM, Chad Nelson <chad.nelson@lyrasis.org> >> wrote: >> >>> Hi Ray, >>> >>> >>> Yeah, on each iteration I'm clearing the browser cache. Also dropping >>> the DBs and recreating to flush out any data. >>> >>> >>> Chad >>> >>> >>> ------------------------------ >>> *From:* Ray Lee <rhlee@berkeley.edu> >>> *Sent:* Tuesday, March 31, 2015 3:38 PM >>> *To:* Chad Nelson >>> *Cc:* talk@lists.collectionspace.org >>> *Subject:* Re: [Talk] Collection Object vocabularies not populating UI >>> >>> Hi Chad, >>> Have you tried clearing your browser cache? >>> >>> Ray >>> >>> On Tue, Mar 31, 2015 at 12:08 PM, Chad Nelson <chad.nelson@lyrasis.org> >>> wrote: >>> >>>> >>>> Hi All, >>>> >>>> Thanks to Jesse for pointing out some errant closing brackets in my >>>> app layer config. Fixed those, but, unfortunately, the problem of fields >>>> not being populated with the vocabulary on inline data persists. >>>> >>>> Chad >>>> >>>> ------------------------------ >>>> *From:* Talk <talk-bounces@lists.collectionspace.org> on behalf of >>>> Chad Nelson <chad.nelson@lyrasis.org> >>>> *Sent:* Tuesday, March 31, 2015 11:45 AM >>>> *To:* talk@lists.collectionspace.org >>>> *Subject:* [Talk] Collection Object vocabularies not populating UI >>>> >>>> >>>> Hi All, >>>> >>>> >>>> I'm doing a bit of work adding local fields to collection object >>>> form. >>>> >>>> >>>> While all the new fields I have added are appearing on the Cataloging >>>> Form, the select elements for are not being populated with options from >>>> vocabulary instances, nor with options defined in the App layer field >>>> definition. I've tried with and without custom selectors (since many of the >>>> collection-object fields seem to have custom selectors) but it has not >>>> helped. >>>> >>>> >>>> The vocabulary terms have been initialized and can be retrieved via >>>> the `cspace-service/vocabularies` service endpoint, so they are are making >>>> it into the db. >>>> >>>> >>>> Two examples: >>>> >>>> Adding field contentWorkType >>>> >>>> >>>> app: >>>> https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18 >>>> >>>> >>>> vocab: >>>> https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18 >>>> >>>> >>>> ui: >>>> https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L373 >>>> >>>> >>>> Adding field ContentEntityType >>>> >>>> >>>> app: >>>> https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L39-L48 >>>> >>>> >>>> ui: >>>> https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L344 >>>> >>>> >>>> Also, I have successfully added fields with vocab lookups in other >>>> procedure forms, so generally it does work, just not in this instance. >>>> >>>> >>>> Any ideas on what could be causing the issue? I've searched through >>>> the logs but haven't found anything indicating what the error could be, so >>>> any help would be greatly appreciated. >>>> >>>> >>>> Thanks, >>>> >>>> Chad >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> Talk mailing list >>>> Talk@lists.collectionspace.org >>>> >>>> http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org >>>> >>>> >>> >>> _______________________________________________ >>> Talk mailing list >>> Talk@lists.collectionspace.org >>> >>> http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org >>> >>> >> > > _______________________________________________ > Talk mailing list > Talk@lists.collectionspace.org > > http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org > >
CN
Chad Nelson
Wed, Apr 1, 2015 8:44 PM

Ray,

Thanks for this! Really useful to know this is here, and I can already tell is going to help.

Also, I found that bit about the selector confusing as well. Glad to have a recommendation to avoid them.

Chad


From: Ray Lee rhlee@berkeley.edu
Sent: Wednesday, April 1, 2015 3:55 PM
To: Chad Nelson
Cc: Rick Jaffe; talk@lists.collectionspace.org
Subject: Re: [Talk] Collection Object vocabularies not populating UI

Also: You probably thought you had the class name right, because the field label showed up correctly, but note that when you define a <selector> in the app layer, it changes the class name you have to use on the field itself, but it does not change the class name you have to use on the label, so they become inconsistent. I never use <selector>, because it leads to trouble like this. I've never come across a good reason to use it.

Ray

On Wed, Apr 1, 2015 at 12:50 PM, Ray Lee <rhlee@berkeley.edumailto:rhlee@berkeley.edu> wrote:
Hi Chad,
Here's how I would debug this:
Download the uispec for the record: /collectionspace/tenant/core/cataloging/uispec

Search for the name of your field in the recordEditor object. There should be a label, and a field definition, both keyed by the class name that you should be using in the HTML. Do they match what you have in the HTML template?

I'm guessing they don't, because your selector in the app layer is object-description-contentWorkType (no dashes in contentWorkType), but your class name in the HTML is csc-object-description-content-work-type.

The fields in question probably don't get saved, which would also be a good sign that you have the class name wrong in the HTML.

Ray

On Wed, Apr 1, 2015 at 12:33 PM, Chad Nelson <chad.nelson@lyrasis.orgmailto:chad.nelson@lyrasis.org> wrote:

Hi Rick,

Well, I added the option tag to the one that was missing it, but it did not fill in the rest of the options from the vocab.

I was definitely trying to point to a vocabulary instance, vocab-contentworktype, in an overridden base-instance-vocabularies.xml file.
https://github.com/CollectionSpace-Deployments/application/blob/mmi-cataloging/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml#L324

They are local extension fields with local extension vocabularies.

I was following the example from default base-collectionobject.xml, specifically the contentLanguages field:

https://github.com/collectionspace/application/blob/master/tomcat-main/src/main/resources/defaults/base-collectionobject.xml#L399-L405

I've also added the default enum and blankvalue tags, but again, not filling in the options list.

Chad


From: Rick Jaffe <rjaffe@berkeley.edumailto:rjaffe@berkeley.edu>
Sent: Tuesday, March 31, 2015 7:18 PM
To: Chad Nelson
Cc: Ray Lee

Subject: Re: [Talk] Collection Object vocabularies not populating UI

Chad,

It's been a while since I looked at CSpace config, so I may be way off base, but I see one thing that seems wrong about the UI config for contentWorkType: your HTML is missing the <option value=">Options not loaded</option> tag set.

Either that, or it's incorrectly pointing at the vocab-worktype instance in base-instance-vocabularies.xmlhttps://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml. Your note makes it seem as if you were trying to display an authority, rather than a vocabulary instance. Did you mean to point to either vocab-genre or vocab-medium in mmi-authority-work.xmlhttps://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-authority-work.xml?

Rick

On Tue, Mar 31, 2015 at 1:09 PM, Chad Nelson <chad.nelson@lyrasis.orgmailto:chad.nelson@lyrasis.org> wrote:

Hi Ray,

Yeah, on each iteration I'm clearing the browser cache. Also dropping the DBs and recreating to flush out any data.

Chad


From: Ray Lee <rhlee@berkeley.edumailto:rhlee@berkeley.edu>
Sent: Tuesday, March 31, 2015 3:38 PM
To: Chad Nelson
Cc: talk@lists.collectionspace.orgmailto:talk@lists.collectionspace.org
Subject: Re: [Talk] Collection Object vocabularies not populating UI

Hi Chad,
Have you tried clearing your browser cache?

Ray

On Tue, Mar 31, 2015 at 12:08 PM, Chad Nelson <chad.nelson@lyrasis.orgmailto:chad.nelson@lyrasis.org> wrote:

Hi All,

Thanks to Jesse for pointing out some errant closing brackets in my app layer config. Fixed those, but, unfortunately, the problem of fields not being populated with the vocabulary on inline data persists.

Chad


From: Talk <talk-bounces@lists.collectionspace.orgmailto:talk-bounces@lists.collectionspace.org> on behalf of Chad Nelson <chad.nelson@lyrasis.orgmailto:chad.nelson@lyrasis.org>
Sent: Tuesday, March 31, 2015 11:45 AM
To: talk@lists.collectionspace.orgmailto:talk@lists.collectionspace.org
Subject: [Talk] Collection Object vocabularies not populating UI

Hi All,

I'm doing a bit of work adding local fields to collection object form.

While all the new fields I have added are appearing on the Cataloging Form, the select elements for are not being populated with options from vocabulary instances, nor with options defined in the App layer field definition. I've tried with and without custom selectors (since many of the collection-object fields seem to have custom selectors) but it has not helped.

The vocabulary terms have been initialized and can be retrieved via the cspace-service/vocabularies service endpoint, so they are are making it into the db.

Two examples:

Adding field contentWorkType

app: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18

vocab: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18

ui: https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L373

Adding field ContentEntityType

app: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L39-L48

ui: https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L344

Also, I have successfully added fields with vocab lookups in other procedure forms, so generally it does work, just not in this instance.

Any ideas on what could be causing the issue? I've searched through the logs but haven't found anything indicating what the error could be, so any help would be greatly appreciated.

Thanks,

Chad


Talk mailing list
Talk@lists.collectionspace.orgmailto:Talk@lists.collectionspace.org
http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org


Talk mailing list
Talk@lists.collectionspace.orgmailto:Talk@lists.collectionspace.org
http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org

Ray, Thanks for this! Really useful to know this is here, and I can already tell is going to help. Also, I found that bit about the selector confusing as well. Glad to have a recommendation to avoid them. Chad ________________________________ From: Ray Lee <rhlee@berkeley.edu> Sent: Wednesday, April 1, 2015 3:55 PM To: Chad Nelson Cc: Rick Jaffe; talk@lists.collectionspace.org Subject: Re: [Talk] Collection Object vocabularies not populating UI Also: You probably thought you had the class name right, because the field label showed up correctly, but note that when you define a <selector> in the app layer, it changes the class name you have to use on the field itself, but it does not change the class name you have to use on the label, so they become inconsistent. I never use <selector>, because it leads to trouble like this. I've never come across a good reason to use it. Ray On Wed, Apr 1, 2015 at 12:50 PM, Ray Lee <rhlee@berkeley.edu<mailto:rhlee@berkeley.edu>> wrote: Hi Chad, Here's how I would debug this: Download the uispec for the record: /collectionspace/tenant/core/cataloging/uispec Search for the name of your field in the recordEditor object. There should be a label, and a field definition, both keyed by the class name that you should be using in the HTML. Do they match what you have in the HTML template? I'm guessing they don't, because your selector in the app layer is object-description-contentWorkType (no dashes in contentWorkType), but your class name in the HTML is csc-object-description-content-work-type. The fields in question probably don't get saved, which would also be a good sign that you have the class name wrong in the HTML. Ray On Wed, Apr 1, 2015 at 12:33 PM, Chad Nelson <chad.nelson@lyrasis.org<mailto:chad.nelson@lyrasis.org>> wrote: Hi Rick, Well, I added the option tag to the one that was missing it, but it did not fill in the rest of the options from the vocab. I was definitely trying to point to a vocabulary instance, vocab-contentworktype, in an overridden base-instance-vocabularies.xml file. https://github.com/CollectionSpace-Deployments/application/blob/mmi-cataloging/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml#L324 They are local extension fields with local extension vocabularies. I was following the example from default base-collectionobject.xml, specifically the contentLanguages field: https://github.com/collectionspace/application/blob/master/tomcat-main/src/main/resources/defaults/base-collectionobject.xml#L399-L405 I've also added the default enum and blankvalue tags, but again, not filling in the options list. Chad ________________________________ From: Rick Jaffe <rjaffe@berkeley.edu<mailto:rjaffe@berkeley.edu>> Sent: Tuesday, March 31, 2015 7:18 PM To: Chad Nelson Cc: Ray Lee Subject: Re: [Talk] Collection Object vocabularies not populating UI Chad, It's been a while since I looked at CSpace config, so I may be way off base, but I see one thing that seems wrong about the UI config for contentWorkType: your HTML is missing the <option value=">Options not loaded</option> tag set. Either that, or it's incorrectly pointing at the vocab-worktype instance in base-instance-vocabularies.xml<https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/base-instance-vocabularies.xml>. Your note makes it seem as if you were trying to display an authority, rather than a vocabulary instance. Did you mean to point to either vocab-genre or vocab-medium in mmi-authority-work.xml<https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-authority-work.xml>? Rick On Tue, Mar 31, 2015 at 1:09 PM, Chad Nelson <chad.nelson@lyrasis.org<mailto:chad.nelson@lyrasis.org>> wrote: Hi Ray, Yeah, on each iteration I'm clearing the browser cache. Also dropping the DBs and recreating to flush out any data. Chad ________________________________ From: Ray Lee <rhlee@berkeley.edu<mailto:rhlee@berkeley.edu>> Sent: Tuesday, March 31, 2015 3:38 PM To: Chad Nelson Cc: talk@lists.collectionspace.org<mailto:talk@lists.collectionspace.org> Subject: Re: [Talk] Collection Object vocabularies not populating UI Hi Chad, Have you tried clearing your browser cache? Ray On Tue, Mar 31, 2015 at 12:08 PM, Chad Nelson <chad.nelson@lyrasis.org<mailto:chad.nelson@lyrasis.org>> wrote: Hi All, Thanks to Jesse for pointing out some errant closing brackets in my app layer config. Fixed those, but, unfortunately, the problem of fields not being populated with the vocabulary on inline data persists. Chad ________________________________ From: Talk <talk-bounces@lists.collectionspace.org<mailto:talk-bounces@lists.collectionspace.org>> on behalf of Chad Nelson <chad.nelson@lyrasis.org<mailto:chad.nelson@lyrasis.org>> Sent: Tuesday, March 31, 2015 11:45 AM To: talk@lists.collectionspace.org<mailto:talk@lists.collectionspace.org> Subject: [Talk] Collection Object vocabularies not populating UI Hi All, I'm doing a bit of work adding local fields to collection object form. While all the new fields I have added are appearing on the Cataloging Form, the select elements for are not being populated with options from vocabulary instances, nor with options defined in the App layer field definition. I've tried with and without custom selectors (since many of the collection-object fields seem to have custom selectors) but it has not helped. The vocabulary terms have been initialized and can be retrieved via the `cspace-service/vocabularies` service endpoint, so they are are making it into the db. Two examples: Adding field contentWorkType app: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18 vocab: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L18 ui: https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L373 Adding field ContentEntityType app: https://github.com/CollectionSpace-Deployments/application/blob/d53cc35e23ce9a9d690bf912f3dfca0b92ea0265/tomcat-main/src/main/resources/tenants/mmi/mmi-collectionobject.xml#L39-L48 ui: https://github.com/CollectionSpace-Deployments/ui/blob/db16ec65263a7ed94e3c325ac5e4e22b41e9f3c0/src/main/webapp/tenants/mmi/html/pages/CatalogingTemplate.html#L344 Also, I have successfully added fields with vocab lookups in other procedure forms, so generally it does work, just not in this instance. Any ideas on what could be causing the issue? I've searched through the logs but haven't found anything indicating what the error could be, so any help would be greatly appreciated. Thanks, Chad _______________________________________________ Talk mailing list Talk@lists.collectionspace.org<mailto:Talk@lists.collectionspace.org> http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org _______________________________________________ Talk mailing list Talk@lists.collectionspace.org<mailto:Talk@lists.collectionspace.org> http://lists.collectionspace.org/mailman/listinfo/talk_lists.collectionspace.org