Skip to content

support for const_get() in java_package_module_template #435

Description

@bwalsh

jruby/src/jruby/java/java_package_module_template.rb does not include an implementation of const_get().

use case:

Leveraging extends and include`s, I've added ActiveModel support to java pojos. This works well and I can now use pojos as full fledged models in rails apps. This is quite useful for integration.
see
http://yehudakatz.com/2010/01/10/activemodel-make-any-ruby-object-feel-like-activerecord/

However, some gems (ActiveSupport) pass the class into ActiveSupport::Dependencies.constantize(resource_class_name). This in turn calls active_support/inflector/methods.constantize() for each module which finally calls constant.const_get().

I've added a few trace statements and have seen the following

resource_class_name=::Java::ComMyCoPocModel::CardApplicant
constantize Object Java
constantize Java ComMyCoPocModel
constantize Java::ComMyCoPocModel CardApplicant
ArgumentError: Java package com.myco.poc.model' does not have a methodconst_get'

Looking at the code JavaPackageModuleTemplate, would an implementation of const_get() be similar to const_missing() ie call to JavaUtilities.get_proxy_class

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions