Nesting Comet inside LazyLoad which is itself inside a Comet Actor doesn't work
Nobody has claimed this yet.
- Dominant language
- Scala
- Stars
- 1.3k
- Forks
- 275
- PR merge metrics
- No merged PRs in 30d
Description
**[Mailing List thread](https://groups.google.com/forum/#!topic/liftweb/zH_rKQVbSVQ)**
**[Example page in a wider project - you know how to find the Scala code](https://github.com/gravelld/lift-duplicate-renders/blob/master/src/main/webapp/lazyload-comet.html).**
I have a Comet Actor which uses `LazyLoad.render` programmatically to lazy load part of its display. When the lazy loading is complete the rendered NodeSeq contains further Comet Actors. These display initially, however no further updates occur - rerendering of the nested Comet Actors are not passed to the page.
#### Workaround
Create your own `MyLazyLoad` Actor and, if required programmatically, initialise it as so:
```
S.findOrCreateComet("MyLazyLoad", Full(Helpers.nextFuncName), ns, S.attrsFlattenToMap, true).map { foundComet =>
foundComet ! MyLazyLoad.Init(initData)
Comet.containerForCometActor(foundComet, Full(ns))
} match {
case Full(cometContainer) => cometContainer
case failedResult => throw new IllegalArgumentException(s"$failedResult")
}
```
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the mailing-list thread and the example page at src/main/webapp/lazyload-comet.html, then trace the programmatic LazyLoad.render call and nested Comet Actor rendering. Compare this behavior with the provided MyLazyLoad workaround. Done means Comet Actors rendered inside LazyLoad continue receiving updates when nested in another Comet Actor.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- scala
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100