1 2 Previous Next 18 Replies Latest reply on Aug 5, 2006 5:47 AM by rlhr Go to original post
      • 15. Re: @WebRemote: problem with client site instantiation of ob
        shane.bryzak

        There should be getters and setters, I'll try and find time today to fix this for you.

        • 16. Re: @WebRemote: problem with client site instantiation of ob
          shane.bryzak

          This has been fixed in CVS - you'll now get correctly generated getter/setter methods for non-component types.

          • 17. Re: @WebRemote: problem with client site instantiation of ob

            Thanks, I'll try it when I get today's build.

            • 18. Re: @WebRemote: problem with client site instantiation of ob

              Hello,

              So I got time to do more testing. Now the interface generated for the SelectItem is fine and got all the methods defined.

              Seam.Remoting.type.javax$faces$model$SelectItem = function() {
               this.value = undefined;
               this.label = undefined;
               this.disabled = undefined;
               this.description = undefined;
               Seam.Remoting.type.javax$faces$model$SelectItem.prototype.getValue = function() { return this.value; }
               Seam.Remoting.type.javax$faces$model$SelectItem.prototype.getLabel = function() { return this.label; }
               Seam.Remoting.type.javax$faces$model$SelectItem.prototype.isDisabled = function() { return this.disabled; }
               Seam.Remoting.type.javax$faces$model$SelectItem.prototype.getDescription = function() { return this.description; }
               Seam.Remoting.type.javax$faces$model$SelectItem.prototype.setValue = function(value) { this.value = value; }
               Seam.Remoting.type.javax$faces$model$SelectItem.prototype.setLabel = function(label) { this.label = label; }
               Seam.Remoting.type.javax$faces$model$SelectItem.prototype.setDisabled = function(disabled) { this.disabled = disabled; }
               Seam.Remoting.type.javax$faces$model$SelectItem.prototype.setDescription = function(description) { this.description = description; }
              }
              
              Seam.Remoting.type.javax$faces$model$SelectItem.__name = "javax.faces.model.SelectItem";
              Seam.Remoting.type.javax$faces$model$SelectItem.__metadata = [
               {field: "value", type: "bean"},
               {field: "label", type: "str"},
               {field: "disabled", type: "bool"},
               {field: "description", type: "str"}];
              
              Seam.Remoting.registerType(Seam.Remoting.type.javax$faces$model$SelectItem);
              

              Also I was able to import a non-component classes:

              <script type="text/javascript" src="/myApp/seam/remoting/interface.js?test.RangeValue">/* IE */</script>
              

              generated the following interface:

              Seam.Remoting.type.test$RangeValue = function() {
               this.value = undefined;
               this.minValue = undefined;
               this.maxValue = undefined;
               Seam.Remoting.type.test$PriceRange.prototype.getValue = function() { return this.value; }
               Seam.Remoting.type.test$PriceRange.prototype.getMinValue = function() { return this.minValue; }
               Seam.Remoting.type.test$PriceRange.prototype.getMaxValue = function() { return this.maxValue; }
               Seam.Remoting.type.test$PriceRange.prototype.setValue = function(value) { this.value = value; }
               Seam.Remoting.type.test$PriceRange.prototype.setMinValue = function(minValue) { this.minValue = minValue; }
               Seam.Remoting.type.test$PriceRange.prototype.setMaxValue = function(maxValue) { this.maxValue = maxValue; }
              }
              
              Seam.Remoting.type.test$RangeValue.__name = "test.RangeValue";
              Seam.Remoting.type.test$RangeValue.__metadata = [
               {field: "value", type: "number"},
               {field: "minValue", type: "number"},
               {field: "maxValue", type: "number"}];
              
              Seam.Remoting.registerType(Seam.Remoting.type.test$RangeValue);
              

              Everything looks good to me.

              Thanks for this great work.

              Richard

              1 2 Previous Next