What do you think about passing the model as a component argument instead? That way you are not depending on the order of the calls. See also: http://jumpstart.doublenegative.com.au/jumpstart6/examples/navigation/whatiscalledandwhen for an explanation.

--
---------------------- Mats Andersson | Ronsoft AB | +46(0)73 368 79 82


On 2018-10-27 05:00, abangkis wrote:
Sorry, still having some problems with custom component. I need to pass a
logged in user object to the component.

So I push the wrapper class from the page to the environment

@BeginRender
void beginRender() {
   LoanBundleModel model = new LoanBundleModel();
   model.setUserId(getCurrentUser().getId());
   environment.push(LoanBundleModel.class, model);
}
And then retrieve it in the component by using environmental

@Environmental
private LoanBundleModel model;

And use it in a method like this:
@CommitAfter
@OnEvent("DeleteDoc")
void deleteDoc(Long loanDocumentId) {
   User user = userManager.get(model.getUserId());
   String message =
loanDocumentService.deleteLoanApplicationDoc(loanDocumentId, user);
     if (message != null) {
       validationTracker.recordError(message);
     }
}

But i keep getting. No object of type
net.mreunionlabs.gri.server.compmodel.gri.LoanBundleModel is available from
the Environment.

What did I do wrong?

Thanks

On Sat, Oct 27, 2018 at 7:02 AM abangkis <abang...@gmail.com> wrote:

I see. Thanks Dmitry.

On Sat, Oct 27, 2018 at 12:23 AM Dmitry Gusev <dmitry.gu...@gmail.com>
wrote:

For forms you can use:

     @Environmental
     private ValidationTracker validationTracker;

and then

     validationTracker.recordError(...)


On Fri, Oct 26, 2018 at 6:45 PM abangkis <abang...@gmail.com> wrote:

Thanks a lot Dmitry. It's working great.

There's another thing. If the custom component inside a form and like to
set some error message.
If it's a page we can do something like:

@InjectComponent
private Form form;

form.recordError(message);

How to do something like that in a component?

Thanks a lot.



On Fri, Oct 26, 2018 at 7:59 PM Dmitry Gusev <dmitry.gu...@gmail.com>
wrote:

Hi,

I would try something like this:

@Inject ComponentResources resources;

and then

pageRenderLinkSource.createPageRenderLink(resources.getPageName());

On Fri, Oct 26, 2018 at 2:07 PM abangkis <abang...@gmail.com> wrote:

Hi guys. I'm moving parts of of my page to a custom component. In
the
page
there's a method that will go to another page and go back to the
original
page when finished. Here's the code:

@OnEvent("AddDoc")
Object addDoc() {
Link thisPage =
pageRenderLinkSource.createPageRenderLink(this.getClass());
addLoanDocPage.setLoanApplicationId(loanApplication.getId());
addLoanDocPage.setLinkBack(thisPage);
return addLoanDocPage;
}

I'm moving that method to the custom component. How can  the
component
generate the Link to the page that contains it?

Thanks

--
http://www.mreunionlabs.net/ <http://www.mreunion-labs.net/>
twitter : @mreunionlabs @abangkis
page : https://plus.google.com/104168782385184990771


--
Dmitry Gusev

AnjLab Team
http://anjlab.com


--
http://www.mreunionlabs.net/ <http://www.mreunion-labs.net/>
twitter : @mreunionlabs @abangkis
page : https://plus.google.com/104168782385184990771


--
Dmitry Gusev

AnjLab Team
http://anjlab.com


--
http://www.mreunionlabs.net/ <http://www.mreunion-labs.net/>
twitter : @mreunionlabs @abangkis
page : https://plus.google.com/104168782385184990771


Reply via email to