apache / apache/grails-core

grails.artefact.controller.support.ResponseRenderer fails when application calls render (plugin: XXX, view: YYY). Works for render(plugin:XXX, template:yyy)

Open
#12,400 0 comments 0 reactions 0 assignees View on GitHub
info: no example attached
Dominant language
Groovy
Stars
2.9k
Forks
975
Avg merge
1d 22h
Merged PRs (30d)
92

Description

### Expected Behavior

render (plugin: XXX, view: YYY) should work, however the code path in grails.artefact.controller.support.ResponseRenderer.render is different and for a view the code goes looking a view using a url that include a plugin projects "version" - which is usually "unspecified"

Workaround seems to be to rename a view to have an underscore and use the render (plugin: xxx, template: yyy) form instead.

### Actual Behaviour

Get an error

### Steps To Reproduce

_No response_

### Environment Information

_No response_

### Example Application

_No response_

### Version

5.1.2

Contributor guide

Open the contributing guide

Research direction

Start at grails.artefact.controller.support.ResponseRenderer.render and compare the code path for render(plugin: XXX, view: YYY) with the working template form. Reproduce the failure on Grails 5.1.2 using a plugin whose version is "unspecified"; done means the view form resolves successfully without the versioned URL error and the behavior is covered by a regression test.

Written by the indexing model from the issue text.

Assessment

Tech stack
groovy
Domain
backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.