您可以在以下位置获取 DS-2099 的完整补丁:
https://github.com/arvoConsultores/DSpace/commit/3e971d70daaa4762a443c89fb7fa6f9e5b8e630d.patch
(提示:您可以在 github 的提交中添加“.patch”以查看补丁)
我觉得这里发帖太长了。
检查 SolicitarCorreccionForm 以显示标题以及您想要使用我的其他响应从句柄获取数据的内容,而不是:
feedback.addPara(T_para1.parameterize(parameters.getParameter("handle","unknown")));
你应该做:
String handle=parameters.getParameter("handle","unknown");
// context=new Context(); // Context exist in a form:
DSpaceOBject dso = HandleManager.resolveToObject(context,handle);
if (dso instanceof Item){
Item item=((Item)dso);
DCValue[] titles= item.getMetadata("dc", "contributor", "author",null);
feedback.addPara(titles[0].value); // check for nulls or multiple values;
}
要将标题发送到邮件类,您应该这样做:
feedback.addHidden("title").setValue(titles[0].value);
在 aspect/ViewArtifacts/sitemap.xmap 你应该设置参数:
<map:transform type="SolicitarCorreccionForm">
<map:parameter name="title" value="{title}" />
...
获取 SendSolicitarCorreccionAction 并发送到电子邮件,将参数添加到邮件中,例如:
String title= request.getParameter("title");
email.addArgument(title); // Titulo
...
您想更改网址
<map:match pattern="solicitarCorreccion/**">
你想要什么。
PD-我忘了提到添加 SolicitarCorreccionForm 的导入:
import org.dspace.content.DCValue;
import org.dspace.content.DSpaceObject;
import org.dspace.content.Item;
import org.dspace.handle.HandleManager;
我希望这会有所帮助。