#jsp #google-app-engine #google-cloud-datastore
#jsp #google-app-engine #google-cloud-хранилище данных
Вопрос:
здесь запрос хранилища данных, который работает нормально
<%
DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
Query query = new Query("EventsDetail");
%>
здесь форма выбора опции
<form action="EventsPortal.jsp" method="get" id="select-cat" >
<select name="scategory" onchange="this.form.submit();">
<option>Select Category</option>
<option>Educational</option>
<option>Arts</option>
<option>Party and Entertainment</option>
</select
</form>
здесь я добавил запрос фильтра в соответствии с опцией выбора
<c:choose>
<c:when test="${param.scategory == 'Educational'}">
<% query.addFilter("Category", FilterOperator.EQUAL,Educational); %>
</c:when>
<c:when test="${param.scategory == 'Arts'}">
<% query.addFilter("Category", FilterOperator.EQUAL,Arts); %>
</c:when>
<c:when test="${param.scategory == 'Party and Entertainment'}">
<% query.addFilter("Category", FilterOperator.EQUAL,Entertainment); %>
</c:when>
<c:otherwise>
<h2>Latest Events</h2>
</c:otherwise>
</c:choose>
ошибка показывает, что образовательные, художественные, развлекательные программы не могут быть разрешены.
Ответ №1:
В вашем коде нет переменных для образовательных, художественных и развлекательных программ. Вы должны использовать:
<% query.addFilter("Category", FilterOperator.EQUAL, "Educational"); %>
если вы установите для свойства «Категория» строковое значение «Образовательный».