【问题标题】:OpenXava: Retain URL after load imageOpenXava:加载图像后保留 URL
【发布时间】:2017-03-02 07:40:41
【问题描述】:

上传图片的默认行为,使用 Stereotype("PHOTO") 会改变 url。例如,加载图像后,localhost:8080/m/Activity?Uid=15&Year=2017 将更改为 localhost:8080/m/Activity?application=Survey&module=Activity。我尝试使用下面显示的代码保留 url,但它不起作用。有人可以帮助我如何保留以前的网址吗?

ImageEditor.jsp

<%@ include file="../imports.jsp"%>

<%@ page import="org.openxava.model.meta.MetaProperty" %>
<%@ page import="org.openxava.web.Ids" %>

<%
String propertyKey = request.getParameter("propertyKey");
MetaProperty p = (MetaProperty) request.getAttribute(propertyKey);
boolean editable="true".equals(request.getParameter("editable"));
String uId = request.getParameter("UId");
String year = request.getParameter("Year");
long dif=System.currentTimeMillis(); // to avoid browser caching
%>

<img id='<%=propertyKey%>' name='<%=propertyKey%>' src='<%=request.getContextPath()%>/xava/ximage?UId=<%=uId%>&Year=<%=year%>&property=<%=propertyKey%>&dif=<%=dif%>' title="<%=p.getDescription(request)%>" alt=""/>

<% if (editable) { %>   
    <span valign='middle'>
        <xava:link action='ImageEditor.changeImage' argv='<%="newImageProperty="+Ids.undecorate(propertyKey)%>'/>
        &nbsp;&nbsp;
        <xava:action action='ImageEditor.deleteImage' argv='<%="newImageProperty="+Ids.undecorate(propertyKey)%>'/> 
    </span>
<% } %> 

谢谢。

布赖恩

【问题讨论】:

    标签: photo openxava


    【解决方案1】:

    OpenXava 在上传后会更改 URL,它以这种方式工作。您应该将参数值存储在会话对象中,以免丢失它们。

    【讨论】:

    • 感谢您在两个讨论网站上回答我的问题。但是@javierpaninza,我必须有参数值才能将值设置到我的数据库中。如果由于 URL 更改而无法获取该值,则将存储在数据库中的参数值将为 NULL。为了您的信息,我使用 String sysuId = getRequest().getParameter("LocId") 来获取值和 getView().setValue("locId", locId) 来存储值。还有其他获取和设置参数值的方法吗?此外,我可以在 URL 更改之前获取和设置值,但之后就不能了。
    • 如果 sysuId 为空,则不要将其分配给视图。
    猜你喜欢
    • 2014-09-18
    • 2017-07-06
    • 2013-03-09
    • 1970-01-01
    • 2012-07-27
    • 2012-12-16
    • 2013-05-30
    • 2011-07-19
    • 1970-01-01
    相关资源
    最近更新 更多