To the page content
Thunbnail Video RanMarine

Precise job for cleaner waters

Dutch company RanMarine Technology has developed an autonomous, floating aqua-drone for cleaning waterways. It uses Telekom's Precise Positioning System for accurate navigation.

“Precise Positioning provides us with the accuracy and scalability we need to continually evolve our cleaning aqua-drones.”

Richard Hardiman, Founder and CEO of RanMarine Technology

3 steps to a successful IoT Use Case

0
1
2
3

Challenge

The battery-powered “WasteShark” aqua-drone from RanMarine independently cleans harbors, canals, and waterways of plastic waste, oil spillage, or algae. In addition, it measures water quality. However, conventional satellite GPS did not provide the swimming robot with sufficient precision – neither for precise autonomous navigation nor for automatic docking and recharging.

Solution

RanMarine chose the Precise Positioning solution from Telekom and Swift Navigation: A global network of base stations measures local interference with the signals from GPS satellites and sends this data to the cloud. From there, corrected position data is transmitted to the floating drone. Instead of being accurate to within several meters, the position of the watercraft can now be pinpointed to within a few centimeters.

Customer benefit

Thanks to Precise Positioning, the WasteShark can navigate more precisely and fluidly, collect waste more quickly and avoid obstacles more safely. This saves time and operating costs. In addition, the exact coordinate of a temperature or pH measurement can now be recorded. Importantly for RanMarine, the drone can now also precisely navigate its docking and charging station, which was not possible before. Telekom's Precise Positioning service, which is already available in many countries, works out-of-the-box, is scalable for an unlimited number of vehicles and is also more reliable than publicly available correction services.

Do you want to find out more?

  • RanMarine's WasteShark collects plastic waste and algae from the surface of the water.

    Reference Flyer

    See all the information on our customer success story in our reference flyer as a PDF file.

    Download flyer as PDF
  • An error occurred in template CMTeasable.asTeaser-06-3-Teaser-Group.ftl for Content with ID 148944.
    Show Details
    FreemarkerView[template=/jar:id:contentproperty:/Themes/telekom-business/templates/telekom-business-templates.jar/archive!/META-INF/resources/WEB-INF/templates/telekom-business/com.coremedia.blueprint.common.contentbeans/CMTeasable.asTeaser-06-3-Teaser-Group.ftl]
    com.coremedia.blueprint.cae.contentbeans.CMTeaserImpl$$[id=148944]
    Error rendering view
    No link scheme found for com.coremedia.blueprint.cae.contentbeans.CMChannelImpl[id=104108] [class=class com.coremedia.blueprint.cae.contentbeans.CMChannelImpl]
    com.coremedia.blueprint.cae.contentbeans.CMTeaserImpl$$
    com.coremedia.objectserver.dataviews.DataView
    com.coremedia.dispatch.HasCustomType
    com.coremedia.blueprint.cae.contentbeans.CMTeaserImpl
    com.coremedia.blueprint.cae.contentbeans.CMTeaserBase
    com.coremedia.blueprint.common.contentbeans.CMTeaser
    com.coremedia.blueprint.cae.contentbeans.CMTeasableImpl
    com.coremedia.blueprint.cae.contentbeans.CMTeasableBase
    com.coremedia.blueprint.common.contentbeans.CMTeasable
    com.coremedia.blueprint.cae.contentbeans.CMHasContextsImpl
    com.coremedia.blueprint.cae.contentbeans.CMHasContextsBase
    com.coremedia.blueprint.common.contentbeans.CMHasContexts
    com.coremedia.blueprint.cae.contentbeans.CMLinkableImpl
    com.coremedia.blueprint.cae.contentbeans.CMLinkableBase
    com.coremedia.blueprint.common.contentbeans.CMLinkable
    com.coremedia.blueprint.common.navigation.Linkable
    com.coremedia.blueprint.common.navigation.HasViewTypeName
    com.coremedia.blueprint.common.contentbeans.BelowRootNavigation
    com.coremedia.blueprint.common.datevalidation.ValidityPeriod
    com.coremedia.blueprint.cae.contentbeans.CMLocalizedImpl
    com.coremedia.blueprint.cae.contentbeans.CMLocalizedBase
    com.coremedia.blueprint.common.contentbeans.CMLocalized
    com.coremedia.blueprint.cae.contentbeans.CMObjectImpl
    com.coremedia.blueprint.cae.contentbeans.CMObjectBase
    com.coremedia.blueprint.common.contentbeans.CMObject
    com.coremedia.objectserver.beans.AbstractContentBean
    com.coremedia.objectserver.beans.ContentBean
    com.coremedia.objectserver.dataviews.AssumesIdentity
    java.lang.Object
    com.coremedia.objectserver.view.ViewException: Error rendering view
    at com.coremedia.objectserver.view.ViewUtils.rethrow(ViewUtils.java:344)
    at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:154)
    at com.coremedia.objectserver.view.DebugViewDecorator$DebugDecorator.decorate(DebugViewDecorator.java:128)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:344)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428)
    at com.coremedia.objectserver.view.ExceptionHandlingViewDecorator$ExceptionDecorator.decorate(ExceptionHandlingViewDecorator.java:135)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:344)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124)
    at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:177)
    at jdk.internal.reflect.GeneratedMethodAccessor130.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:569)
    at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634)
    at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73)
    at freemarker.core.MethodCall._eval(MethodCall.java:62)
    at freemarker.core.Expression.eval(Expression.java:101)
    at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104)
    at freemarker.core.DollarVariable.accept(DollarVariable.java:63)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.visitAndTransform(Environment.java:511)
    at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886)
    at freemarker.core.Environment.invokeMacro(Environment.java:822)
    at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.IteratorBlock$IterationContext.executedNestedContentForCollOrSeqListing(IteratorBlock.java:321)
    at freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:271)
    at freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:244)
    at freemarker.core.Environment.visitIteratorBlock(Environment.java:654)
    at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:108)
    at freemarker.core.IteratorBlock.accept(IteratorBlock.java:94)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.invokeNestedContent(Environment.java:630)
    at freemarker.core.BodyInstruction.accept(BodyInstruction.java:60)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.invokeNestedContent(Environment.java:630)
    at freemarker.core.BodyInstruction.accept(BodyInstruction.java:60)
    at freemarker.core.Environment.visit(Environment.java:344)
    at freemarker.core.Environment.visit(Environment.java:386)
    at freemarker.core.Environment.visitAndTransform(Environment.java:511)
    at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886)
    at freemarker.core.Environment.invokeMacro(Environment.java:822)
    at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886)
    at freemarker.core.Environment.invokeMacro(Environment.java:822)
    at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83)
    at freemarker.core.Environment.visit(Environment.java:344)
    at freemarker.core.Environment.visit(Environment.java:350)
    at freemarker.core.Environment.process(Environment.java:323)
    at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150)
    at com.coremedia.objectserver.view.DebugViewDecorator$DebugDecorator.decorate(DebugViewDecorator.java:128)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:344)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428)
    at com.coremedia.objectserver.view.ExceptionHandlingViewDecorator$ExceptionDecorator.decorate(ExceptionHandlingViewDecorator.java:135)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:344)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124)
    at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:177)
    at jdk.internal.reflect.GeneratedMethodAccessor130.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:569)
    at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634)
    at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73)
    at freemarker.core.MethodCall._eval(MethodCall.java:62)
    at freemarker.core.Expression.eval(Expression.java:101)
    at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104)
    at freemarker.core.DollarVariable.accept(DollarVariable.java:63)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.visitAndTransform(Environment.java:511)
    at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886)
    at freemarker.core.Environment.invokeMacro(Environment.java:822)
    at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.IteratorBlock$IterationContext.executedNestedContentForCollOrSeqListing(IteratorBlock.java:321)
    at freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:271)
    at freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:244)
    at freemarker.core.Environment.visitIteratorBlock(Environment.java:654)
    at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:108)
    at freemarker.core.IteratorBlock.accept(IteratorBlock.java:94)
    at freemarker.core.Environment.visit(Environment.java:344)
    at freemarker.core.Environment.visit(Environment.java:350)
    at freemarker.core.Environment.process(Environment.java:323)
    at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150)
    at com.coremedia.objectserver.view.DebugViewDecorator$DebugDecorator.decorate(DebugViewDecorator.java:128)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:344)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428)
    at com.coremedia.objectserver.view.ExceptionHandlingViewDecorator$ExceptionDecorator.decorate(ExceptionHandlingViewDecorator.java:135)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:344)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124)
    at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:177)
    at jdk.internal.reflect.GeneratedMethodAccessor130.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:569)
    at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634)
    at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73)
    at freemarker.core.MethodCall._eval(MethodCall.java:62)
    at freemarker.core.Expression.eval(Expression.java:101)
    at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104)
    at freemarker.core.DollarVariable.accept(DollarVariable.java:63)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.visitAndTransform(Environment.java:511)
    at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886)
    at freemarker.core.Environment.invokeMacro(Environment.java:822)
    at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83)
    at freemarker.core.Environment.visit(Environment.java:344)
    at freemarker.core.Environment.visit(Environment.java:386)
    at freemarker.core.IteratorBlock$IterationContext.executedNestedContentForCollOrSeqListing(IteratorBlock.java:321)
    at freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:271)
    at freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:244)
    at freemarker.core.Environment.visitIteratorBlock(Environment.java:654)
    at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:108)
    at freemarker.core.IteratorBlock.accept(IteratorBlock.java:94)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.IteratorBlock$IterationContext.executedNestedContentForCollOrSeqListing(IteratorBlock.java:321)
    at freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:271)
    at freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:244)
    at freemarker.core.Environment.visitIteratorBlock(Environment.java:654)
    at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:108)
    at freemarker.core.IteratorBlock.accept(IteratorBlock.java:94)
    at freemarker.core.Environment.visit(Environment.java:344)
    at freemarker.core.Environment.visit(Environment.java:350)
    at freemarker.core.Environment.process(Environment.java:323)
    at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150)
    at com.coremedia.objectserver.view.DebugViewDecorator$DebugDecorator.decorate(DebugViewDecorator.java:128)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:344)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428)
    at com.coremedia.objectserver.view.ExceptionHandlingViewDecorator$ExceptionDecorator.decorate(ExceptionHandlingViewDecorator.java:135)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:344)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124)
    at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:177)
    at jdk.internal.reflect.GeneratedMethodAccessor130.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:569)
    at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634)
    at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73)
    at freemarker.core.MethodCall._eval(MethodCall.java:62)
    at freemarker.core.Expression.eval(Expression.java:101)
    at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104)
    at freemarker.core.DollarVariable.accept(DollarVariable.java:63)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.visitAndTransform(Environment.java:511)
    at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886)
    at freemarker.core.Environment.invokeMacro(Environment.java:822)
    at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83)
    at freemarker.core.Environment.visit(Environment.java:344)
    at freemarker.core.Environment.visit(Environment.java:350)
    at freemarker.core.Environment.process(Environment.java:323)
    at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428)
    at com.coremedia.objectserver.view.ExceptionHandlingViewDecorator$ExceptionDecorator.decorate(ExceptionHandlingViewDecorator.java:135)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:344)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124)
    at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:177)
    at jdk.internal.reflect.GeneratedMethodAccessor130.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:569)
    at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634)
    at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73)
    at freemarker.core.MethodCall._eval(MethodCall.java:62)
    at freemarker.core.Expression.eval(Expression.java:101)
    at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104)
    at freemarker.core.DollarVariable.accept(DollarVariable.java:63)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.visitAndTransform(Environment.java:511)
    at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42)
    at freemarker.core.Environment.visit(Environment.java:380)
    at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886)
    at freemarker.core.Environment.invokeMacro(Environment.java:822)
    at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83)
    at freemarker.core.Environment.visit(Environment.java:344)
    at freemarker.core.Environment.visit(Environment.java:350)
    at freemarker.core.Environment.process(Environment.java:323)
    at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150)
    at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:122)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:336)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:422)
    at com.coremedia.objectserver.view.ExceptionHandlingViewDecorator$ExceptionDecorator.decorate(ExceptionHandlingViewDecorator.java:113)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:334)
    at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:422)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:152)
    at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:109)
    at com.coremedia.objectserver.view.BeanView.renderMergedOutputModel(BeanView.java:63)
    at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:314)
    at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1438)
    at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1168)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1106)
    at com.coremedia.objectserver.web.DispatcherServlet.doDispatch(DispatcherServlet.java:69)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903)
    at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564)
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
    at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at com.coremedia.blueprint.cae.filter.PreviewViewFilter.doFilterInternal(PreviewViewFilter.java:48)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at com.coremedia.blueprint.cae.filter.SiteFilter.doFilter(SiteFilter.java:64)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:108)
    at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231)
    at org.springframework.security.web.ObservationFilterChainDecorator$FilterObservation$SimpleFilterObservation.lambda$wrap$1(ObservationFilterChainDecorator.java:479)
    at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$1(ObservationFilterChainDecorator.java:340)
    at org.springframework.security.web.ObservationFilterChainDecorator.lambda$wrapSecured$0(ObservationFilterChainDecorator.java:82)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:128)
    at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126)
    at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
    at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
    at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
    at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
    at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107)
    at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
    at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:117)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
    at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)
    at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
    at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82)
    at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
    at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
    at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
    at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$0(ObservationFilterChainDecorator.java:323)
    at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:224)
    at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
    at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233)
    at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191)
    at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)
    at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$4(HandlerMappingIntrospector.java:267)
    at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)
    at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74)
    at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:238)
    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362)
    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:110)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:116)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
    at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:732)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344)
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:398)
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:903)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1769)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
    at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
    at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
    at java.base/java.lang.Thread.run(Thread.java:840)
    Caused by: java.lang.IllegalArgumentException: No link scheme found for com.coremedia.blueprint.cae.contentbeans.CMChannelImpl[id=104108] [class=class com.coremedia.blueprint.cae.contentbeans.CMChannelImpl]
    at com.coremedia.objectserver.web.links.LinkFormatter.lambda$formatLink$1(LinkFormatter.java:99)
    at java.base/java.util.Optional.orElseThrow(Optional.java:403)
    at com.coremedia.objectserver.web.links.LinkFormatter.formatLink(LinkFormatter.java:98)
    at de.telekom.cms.common.links.LinkService.getUrl(LinkService.java:187)
    at de.telekom.cms.common.links.LinkService.createLinkToTeasable(LinkService.java:741)
    at de.telekom.cms.common.links.LinkService.createLinkForTeasable(LinkService.java:535)
    at de.telekom.cms.common.links.LinkService.linkFor(LinkService.java:516)
    at de.telekom.cms.common.links.LinkService.linkFor(LinkService.java:474)
    at jdk.internal.reflect.GeneratedMethodAccessor205.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:569)
    at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634)
    at freemarker.ext.beans.ReflectionCallableMemberDescriptor.invokeMethod(ReflectionCallableMemberDescriptor.java:56)
    at freemarker.ext.beans.MemberAndArguments.invokeMethod(MemberAndArguments.java:51)
    at freemarker.ext.beans.OverloadedMethodsModel.exec(OverloadedMethodsModel.java:62)
    at freemarker.core.MethodCall._eval(MethodCall.java:62)
    at freemarker.core.Expression.eval(Expression.java:101)
    at freemarker.core.Assignment.accept(Assignment.java:134)
    at freemarker.core.Environment.visit(Environment.java:344)
    at freemarker.core.Environment.visit(Environment.java:350)
    at freemarker.core.Environment.process(Environment.java:323)
    at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150)
    ... 322 more
    
Woman with headset sitting at a desk and smiling.

We are at your service!

You need further information about one of our offers or have a specific question? We are happy to help you.