Hi Team,
We are upgrading our application from 2014 Kendo Version to Kendo 2023.3.1010 Commercial version.
Post adding the kendo jar (kendo-taglib,2023.3.1010), we are getting blank screen with JSP Pages which working fine before kendo upgrade, its consist of Kendo Grid, Form and Data items.
Unable to find any errors also , since its not posting any errors.
Attached Screenshots for reference of Actual Screen which got post Kendo Upgrade and Expectation for the Same Screen.
Don't know what we are missing, We need to add any other jars for this upgrade?
Kindly Help to provide solution for this issue.
Hello,
I have a question about tag's name in kendoUI for jsp, do you follow any naming convention in tag's name? page Code Conventions for the JavaServer Pages was the only thing that I found about naming convention in jsp files, according to what I have studied in that page , mulitple worlds in file names should started with letter-case and another words should commences with an upper-case letter, but multiple worlds in kendo tags seperated by hyphen(-).
I would be appreciated if tell me what is the best practice for naming tags files in jsp.
I'm running a trial with Kendo UI for JSP 2020.1.406
I've been following the instructions here: https://docs.telerik.com/kendo-ui/jsp/introduction?DisableOverride=true&utm_medium=email&utm_source=eloqua&utm_campaign=dt-jsp-trials
This got me set up with a base project, to which I was able to add a JSP page and some CSS to style it. Now I want to add a dropdown list and populate it with some data. The stuff that gets the data is all from an existing project. Basically, I'm making a call to a Service class and then to a query in a Dao class.
This is my main controller:
package com.agristats.transfersystem.controller;
import java.util.List;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.agristats.transfersystem.bo.Program;
import com.agristats.transfersystem.service.ProgramService;
@Controller
public class MainController {
@RequestMapping("/")
public String main() {
return "main";
}
}
This is working. Then, following the 2nd introductory video on that referenced page, I added this servlet to an api package:
package com.agristats.transfersystem.api;
import java.io.IOException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.agristats.transfersystem.bo.Program;
import com.agristats.transfersystem.service.ProgramService;
import com.google.gson.Gson;
/**
* Servlet implementation class Programs
*/
@WebServlet("/api/programs")
public class Programs extends HttpServlet {
private static final long serialVersionUID = 1L;
private final ProgramService programService;
private List<Program> programs;
/**
* @see HttpServlet#HttpServlet()
*/
public Programs() {
this.programService = new ProgramService();
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
try {
programs = programService.findAllWantedPrograms();
Gson gson = new Gson();
response.setContentType("application/json");
response.getWriter().write(gson.toJson(programs));
} catch (IOException e) {
response.sendError(500);
e.printStackTrace();
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
This fails here: programs = programService.findAllWantedPrograms();
With this error:
java.lang.NullPointerException: null
at com.agristats.transfersystem.service.ProgramService.findAllWantedPrograms(ProgramService.java:32) ~[classes/:0.0.1-SNAPSHOT]
at com.agristats.transfersystem.api.Programs.doGet(Programs.java:41) ~[classes/:0.0.1-SNAPSHOT]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:634) ~[servlet-api.jar:na]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) ~[servlet-api.jar:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) [catalina.jar:9.0.13]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:9.0.13]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-websocket.jar:9.0.13]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:9.0.13]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:9.0.13]
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) [spring-web-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:9.0.13]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:9.0.13]
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) [spring-web-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:9.0.13]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:9.0.13]
at org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:128) [spring-boot-2.3.0.M4.jar:2.3.0.M4]
at org.springframework.boot.web.servlet.support.ErrorPageFilter.access$000(ErrorPageFilter.java:66) [spring-boot-2.3.0.M4.jar:2.3.0.M4]
at org.springframework.boot.web.servlet.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:103) [spring-boot-2.3.0.M4.jar:2.3.0.M4]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) [spring-web-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:121) [spring-boot-2.3.0.M4.jar:2.3.0.M4]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:9.0.13]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:9.0.13]
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) [spring-web-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) [spring-web-5.2.5.RELEASE.jar:5.2.5.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:9.0.13]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:9.0.13]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199) [catalina.jar:9.0.13]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) [catalina.jar:9.0.13]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) [catalina.jar:9.0.13]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) [catalina.jar:9.0.13]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) [catalina.jar:9.0.13]
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668) [catalina.jar:9.0.13]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) [catalina.jar:9.0.13]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) [catalina.jar:9.0.13]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) [tomcat-coyote.jar:9.0.13]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) [tomcat-coyote.jar:9.0.13]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:791) [tomcat-coyote.jar:9.0.13]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1417) [tomcat-coyote.jar:9.0.13]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-coyote.jar:9.0.13]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_163]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_163]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:9.0.13]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_163]
It appears that when the code gets into the Service class and tries to run the Dao query, the dao object is empty.
Am I missing something on the Spring side of this? Can this not be done within the Servlet? Is the method outlined in the video no longer valid (it is seven years old)? Is there a better way to do this? Any help would be most appreciated.
IDEA cant resolve lib when i use:
<%@ taglib prefix="kendo" uri="http://www.kendoui.com/jsp/tags"%>
jar file located in /WEB-INF/lib/ folder, with previous version i don't have such problem
Hi,
I was referring the Kendo Validator Usage, it has shown the examples for HTML, ASP.NET, i could not find the examples for JSP tags, how can we add "required" and also custom rules for the <kendo:dropDownList>, <kendo:datePicker>? Can you please share some Kendo validator examples using JSP tags.
Symptoms
Loading kendo.all.min.js file in IE 8 results in multiple JavaScript errors.
Typically the error message will be "Object doesn't support this property or method" and will be caused by a call to map, forEach or bind.
Root Cause
The errors are due to the inclusion of the Kendo UI Spreadsheet​ which requires IE9 and later.
It was nevertheless bundled in kendo.all without the necessary run-time checks.
Mitigation
<!--[if lt IE 9]>
<
script
src
=
"https://cdnjs.cloudflare.com/ajax/libs/es5-shim/4.1.13/es5-shim.min.js"
></
script
>
<
script
src
=
"https://cdnjs.cloudflare.com/ajax/libs/es5-shim/4.1.13/es5-sham.min.js"
></
script
>
<![endif]-->
Solution
A permanent fix will be included in the next internal build, version 2015.3.1002, due for release on 2 Oct 2015.
Future Service Packs and official releases will be free of this defect as well.
Apologies for the caused inconvenience.​
Hi There,
It would be nice if i could do that:
<
kendo:grid
name
=
"verbrauchsprofile"
<c:if
test
=
"hasPermissionToCreate"
>
<
kendo:grid-toolbar
>
<
kendo:grid-toolbarItem
name
=
"create"
text
=
"Neues Verbrauchsprofil"
/>
</
kendo:grid-toolbar
>
</
c:if>
.....
</
kendo:grid
>
now there is an Exception
javax.servlet.jsp.JspException: The <kendo:grid-toolbarItem> tag should be nested in a <kendo:grid-toolbar> tag.
at com.kendoui.taglib.BaseTag.findParentWithClass(BaseTag.java:133)
at com.kendoui.taglib.grid.ToolbarItemTag.doEndTag(ToolbarItemTag.java:21)
By disallowing other Tags than Kendo Tags, you obstruct many opportunities of what you can do.
I need that to check permissions, and so on and not every tag has an "hidden" attribute to change its visibility
{
"_links"
: {
"self"
: {
"href"
:
"http://localhost:8080/api/leads{?page,size,sort}"
,
"templated"
:
true
},
"next"
: {
"href"
:
"http://localhost:8080/api/leads?page=1&size=20{&sort}"
,
"templated"
:
true
}
},
"_embedded"
: {
"leads"
: [
{
"status"
:
"Open"
,
"accountName"
:
"Foley, Tatiana"
,
"firstName"
:
"Ezra"
,
"lastName"
:
"Cline"
,
"description"
:
"Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
,
"howDidYouHear"
:
"Lorem ipsum dolor sit amet,"
,
"referringUrl"
:
"http://google.com"
,
"userIp"
:
"augue."
,
"resolvedHost"
:
"Nisi Nibh Consulting"
,
"addressType"
:
"Home"
,
"addressLine1"
:
"9290 Lectus Rd."
,
"addressLine2"
:
"quis"
,
"addressCity"
:
"Banff"
,
"addressState"
:
"BA"
,
"addressPostalCode"
:
"E6 1JG"
,
"addressCountry"
:
"UK"
,
"emailType"
:
"Home"
,
"address"
:
"purus@a.edu"
,
"emailOptOut"
:
true
,
"phoneType"
:
"Home"
,
"phoneNumber"
:
"890-6930"
,
"phoneExt"
:
"678"
,
"_links"
: {
"self"
: {
"href"
:
"http://localhost:8080/api/leads/1"
},
"websites"
: {
"href"
:
"http://localhost:8080/api/leads/1/websites"
},
"leads"
: {
"href"
:
"http://localhost:8080/api/leads/1/leads"
},
"socials"
: {
"href"
:
"http://localhost:8080/api/leads/1/socials"
}
}
},
......