La logística es uno de los sectores más competitivos y dinámicos que existen
Aprovecha las oportunidades que ofrece el Internet de las cosas (IoT) para garantizar que tú y tu empresa estén perfectamente posicionados, tanto hoy como en el futuro, y puedan hacer frente a la competencia, desde la inspección de mercancías a la entrada y el mantenimiento de la maquinaria hasta la entrega en la última milla. Con nuestras soluciones IoT, llevarás a cabo con éxito la transformación de una simple empresa de transporte a un proveedor de logística digitalizado.
Descubre en qué ámbitos podemos ayudarle con nuestras soluciones y cómo las empresas ya están utilizando el IoT para poner en práctica el concepto de logística inteligente. Te ayudamos a alcanzar un mayor éxito en su negocio.
Identificar los desafíos y superarlos juntos con éxito
En un mercado saturado, tanto los transportistas a pequeña escala como las empresas de logística de tamaño medio deben mantenerse a flote.
Deben utilizar los recursos de manera eficiente para alcanzar los objetivos de sostenibilidad y cumplir tanto con los requisitos legales como con las necesidades de los clientes en cuanto a redes de transporte más respetuosas con el medio ambiente.
Los bajos márgenes obligan a las empresas a gestionar los recursos de forma eficiente para poder aumentar la productividad y reducir los costes.
Los empleados necesitan herramientas digitales para gestionar de forma óptima el elevado volumen de pedidos y reducir al mínimo los plazos de entrega.
Se necesitan redes a lo largo de la cadena de suministro para que las empresas puedan compartir datos y optimizar los servicios y la experiencia de los usuarios.
Nuestras soluciones para tu éxito
Mejora de la eficiencia y la fiabilidad
Gestión de flotas: las soluciones IoT no solo sirven para supervisar constantemente el estado actual de la flota y aprovecharla de forma óptima, sino que también facilitan la planificación dinámica de rutas al permitir que los proveedores utilicen rutas alternativas, optimizando así los retrasos y, de hecho, la última milla. Más información
Intralogística digital e inspección de mercancías entrantes: nuestras soluciones IoT mejoran la eficiencia tanto en la carretera como en el almacén. Los procesos automatizados de gestión de pedidos ahorran tiempo, simplifican los procedimientos y reducen los errores. Dado que las mercancías se registran y dan de baja del sistema automáticamente, es posible llevar a cabo una inspección eficiente de las mercancías entrantes y una gestión eficaz del inventario.
Mejora de la experiencia de servicio
Nuevos modelos de negocio: en Logística 4.0, limitarse a entregar la mercancía ya no es suficiente. Con nuestras soluciones, las empresas pueden ampliar su oferta y posicionarse de forma más flexible y sostenible. Al utilizar sensores IoT para registrar datos, se ofrece a los clientes un valor añadido en forma de servicios digitales.
Monitorización inteligente del transporte: nuestras soluciones IoT optimizan la monitorización del transporte. Los dispositivos de seguimiento y los sensores de temperatura permiten un seguimiento transparente de los envíos, lo que incluye la supervisión del estado de la mercancía y el seguimiento de los vehículos. De este modo, la hora prevista de llegada es más precisa, se evitan las entregas defectuosas y se aumenta la satisfacción del cliente.
Gestión de los recursos de forma sostenible
Movilidad eléctrica: con nuestra ayuda, podrás impulsar la sostenibilidad de tu empresa y utilizar fuentes de energía alternativas. Por ejemplo, mediante la recarga eléctrica en los centros logísticos. Los vehículos eléctricos reducen las emisiones de gases de efecto invernadero, lo que contribuye a una logística más ecológica y satisface las exigencias de los clientes en materia de protección del medio ambiente.
Haz que tu empresa sea respetuosa con el medio ambiente: nuestras tecnologías digitales te permiten reducir tu huella ecológica. La tecnología de sensores IoT te ofrece un control total sobre el consumo energético de tus edificios, para que puedas optimizarlo. Las etiquetas RFID y los documentos de envío digitales reducen tanto la mano de obra necesaria como la generación de residuos. Las listas de comprobación en papel son cosa del pasado. Reduce las emisiones de CO₂ de tu flota utilizando, por ejemplo, una planificación de rutas dinámica y óptima.
Capacitación del personal
Preparación inteligente de pedidos: gracias a los sistemas «Pick-by-Vision», «Pick-by-Scan», «Pick-by-Voice» o a la preparación de pedidos con realidad aumentada mediante gafas inteligentes, tus preparadores de pedidos podrán beneficiarse de la tecnología inteligente. Dispondrán de toda la información necesaria en el lugar adecuado y podrán trabajar con mayor rapidez y precisión.
Mantenimiento inteligente: el mantenimiento remoto evita a tus empleados largas paradas por averías y facilita la inspección de los vehículos. Gracias al mantenimiento predictivo, los camiones se mantienen en buen estado y se reducen los tiempos de inactividad. Nuestras soluciones IoT sientan las bases para un seguimiento óptimo del estado de los vehículos al conectarlos, lo que le permite analizar y optimizar la conducción de sus empleados, lo que a su vez reduce el desgaste.
Descubre las numerosas ventajas de Deutsche Telekom
Sencillo
Gracias a una cobertura de red superior al 99 % para LTE-M y NB-IoT y del 96 % para 5G en toda Germany —junto con nuestra propia red transatlántica y nuestras alianzas con 600 socios certificados de roaming y satélite—, ofrecemos la mejor cobertura de su clase y conectividad global para el IoT. Todo ello con una sola tarjeta SIM, un solo contrato y un único servicio de atención al cliente centralizado.
Seguro
Gracias a una cobertura de red impecable y a conexiones IP-VPN seguras, garantizamos una conectividad global fiable. El hardware con certificación ISO y las inspecciones periódicas garantizan además que tu proyecto esté totalmente protegido y cuente con un soporte óptimo en todo momento.
Flexible
Existe una tecnología de red adecuada para cada aplicación, en cualquier lugar, ya sea NB-IoT, LTE-M, 5G o conexiones por satélite. Gracias a la nueva «Dormant Connectivity», los dispositivos se preconfiguran de forma económica en fábrica y pueden activarse bajo demanda en cualquier momento.
Mayor eficiencia y sostenibilidad en la logística gracias a la digitalización y al Internet de las Cosas
Descúbrelo todo en nuestro seminario web con Florian Schröter, el Dr. Anton Schäfer y Ariane Elena Fuchs.
¡Estamos a tu disposición!
¿Necesitas más información sobre alguna de nuestras ofertas o tienes alguna pregunta concreta? Estaremos encantados de ayudarte.
ETA son las siglas de «Estimated Time of Arrival» (hora prevista de llegada). En logística, el remitente proporciona a los destinatarios una estimación —la ETA— de cuándo pueden esperar la entrega del envío. La ATA, o «Actual Time of Arrival» (hora real de llegada), es, por supuesto, más concreta. ETD son las siglas de «Estimated Time of Departure» (hora prevista de salida). Se trata del momento en que es probable que un envío salga del almacén y se ponga en camino hacia el destinatario. La precisión de las estimaciones de ETA y ETD puede mejorarse, entre otras cosas, utilizando soluciones de seguimiento y la inspección digital de mercancías entrantes mediante albaranes electrónicos. De este modo, las empresas saben en todo momento exactamente en qué punto de la cadena de suministro se encuentra su envío.
La logística inteligente se refiere a una logística conectada y en gran medida automatizada que, en el mejor de los casos, abarca a todas las empresas a lo largo de la cadena de valor. Se basa en tecnologías digitales e inteligentes, como el Internet de las Cosas (IoT). Uno de los objetivos de la logística inteligente es optimizar la transparencia de la cadena de suministro mediante el uso de soluciones de seguimiento que permitan rastrear las mercancías de principio a fin. Además, los procesos de trabajo deben desarrollarse de la forma más eficiente posible. Pick-by-Vision y otros métodos inteligentes de preparación de pedidos ayudan a los operarios de almacén y les permiten gestionar más pedidos en menos tiempo y con mayor precisión. La logística inteligente se menciona a menudo en relación con la Industria 4.0. Ambos conceptos se complementan entre sí.
En el Internet de las Cosas, los productos y las máquinas pueden conectarse entre sí a lo largo de toda la cadena de valor. Los dispositivos de seguimiento del IoT, por ejemplo, permiten rastrear los productos y los vehículos de transporte, mientras que los sistemas de almacenamiento inteligentes registran automáticamente las entradas y salidas de mercancías, de modo que las empresas disponen en todo momento de una visión general transparente de sus existencias y envíos. Los sensores IoT analizan y facilitan datos sobre la utilización de máquinas y vehículos, lo que permite a las empresas planificar los ciclos de mantenimiento y garantizar que los procesos se desarrollen con la mayor fluidez posible.
El concepto de Logística 4.0 está estrechamente relacionado con el de Logística Inteligente. Al igual que en el caso de la Industria 4.0, el número hace referencia a la cuarta revolución industrial, sucesora de la primera revolución industrial que comenzó a finales del siglo XVIII y redefinió la actividad económica con las máquinas de vapor, entre otras cosas. En la Logística 4.0, la tecnología digital es la que revoluciona los procesos de trabajo. Soluciones como la inteligencia artificial (IA) y el Internet de las Cosas (IoT) crean una transparencia óptima a lo largo de la cadena de suministro, conectan mercancías, máquinas y empleados, haciendo así posibles los procesos automatizados. Los sensores y otro hardware generan datos que las empresas pueden utilizar para aumentar su eficiencia y su competitividad.
Entre las ventajas que ofrece la Logística 4.0 se incluyen las siguientes:
Mayor transparencia a lo largo de toda la cadena de suministro
Mejor aprovechamiento de los recursos gracias al intercambio de datos entre empresas
Formas de mejorar la sostenibilidad, como las cartas de porte electrónicas o los sensores que permiten optimizar el consumo energético en los edificios
Ayuda para los empleados en la preparación de pedidos
Planificación dinámica de rutas mediante vehículos de transporte conectados
Estas y otras oportunidades que ofrece la Logística 4.0 ayudan a las empresas a mantenerse a flote en un mercado altamente competitivo.
En este contexto, el término «seguimiento y localización» se refiere a mercancías o envíos. Si las mercancías en tránsito o los camiones que las transportan están equipados con dispositivos de seguimiento, tanto el remitente como el destinatario pueden ver en cualquier momento y casi en tiempo real dónde se encuentran: si están retenidas por un atasco de tráfico, si ya están en un puerto de carga o si se encuentran almacenadas tras haber llegado a su destino. La localización es posible gracias a tecnologías inalámbricas como NarrowBand IoT (NB-IoT), una red móvil clásica o una red WLAN. Los sensores de temperatura y otros sensores inteligentes amplían el principio de seguimiento y localización para incluir, entre otras cosas, sistemas de monitorización de estado. Estos permiten, por ejemplo, a las empresas vigilar el estado de mercancías sensibles o perecederas, como alimentos o medicamentos. En definitiva, el seguimiento y localización facilita una mayor fiabilidad en las entregas, la evaluación de daños por parte de las aseguradoras y una planificación óptima de los procesos de trabajo, ya que permite predecir con mayor precisión los tiempos de llegada.
La entrega de última milla se refiere a la «última milla» o entrega final de la mercancía al destinatario. Esta fase puede ser la más corta de la cadena de suministro, pero a menudo plantea retos especiales para las empresas de logística. Si se producen retrasos en la última milla, todos los destinatarios posteriores deben esperar más tiempo para recibir su pedido, lo que perjudica la experiencia del cliente. La tecnología digital ya puede echar una mano a los transportistas en la entrega de última milla, por ejemplo, mediante dispositivos portátiles o teléfonos inteligentes que muestran a los conductores la mejor ruta hasta su destino, facilitando así la planificación dinámica de rutas. En el futuro, nuevas innovaciones podrían transformar la última milla mediante el uso de drones que vuelen directamente hasta el destinatario, evitando el tráfico.
Las balizas son dispositivos de radio que envían mensajes inalámbricos, por ejemplo, a través de Bluetooth Low Energy (BLE), a receptores cercanos. Los receptores pueden ser smartphones, tabletas o dispositivos inteligentes, como los wearables. Las balizas optimizan numerosos procesos en la Industria 4.0 y también pueden resultar muy útiles en el ámbito de la logística. Si las empresas colocan balizas, por ejemplo, en palés, máquinas o mercancías almacenadas, y equipan los smartphones de sus empleados con las aplicaciones adecuadas, estos registrarán automáticamente las señales de las balizas cercanas, como su ubicación. En combinación con una plataforma en la nube, estos datos pueden utilizarse de diferentes maneras. Los empleados saben en todo momento dónde se encuentra exactamente cada artículo. Ya no es necesario realizar largas búsquedas y se mejora la eficiencia. El flujo de mercancías dentro de la empresa o en el almacén también se puede seguir mejor, lo que permite optimizar distancias, rutas y procesos. Los inventarios también son más fáciles de realizar, ya que queda claro cuánto stock hay en el almacén. Por último, las balizas se pueden utilizar con el software adecuado como sustituto del tradicional reloj de fichaje. Se comunican con los dispositivos móviles de los empleados cuando llegan o se van, y las horas trabajadas se registran automáticamente.
Los sensores IoT son dispositivos que registran determinados parámetros y transmiten los datos a la nube. Existen diferentes tipos de sensores en función del uso que se les dé. En el ámbito de la logística, uno de los más importantes es el localizador de posición, que registra la ubicación de las mercancías o los medios de transporte y, de este modo, garantiza la transparencia a lo largo de la cadena de suministro. Los sensores de temperatura registran la temperatura del lugar donde se encuentran. Permiten a las empresas de logística garantizar que se mantenga la cadena de frío en los envíos de alimentos o medicamentos. Los indicadores de inclinación y de impacto registran los movimientos bruscos o las inclinaciones. Si estos provocan daños en la mercancía y las empresas pueden demostrar, mediante los datos de los sensores, cómo se produjo el daño, esto facilita la liquidación de las reclamaciones con la aseguradora.
El mantenimiento remoto, cuyo nombre ya lo dice todo, requiere que las máquinas y los dispositivos que se van a mantener estén conectados. Un operador logístico podría, por ejemplo, conectar los robots de su almacén y sería capaz de solucionar rápidamente muchos fallos mediante el mantenimiento remoto, sin que sea necesario que un técnico de reparación acuda al lugar.
Pick-by-Vision es un método inteligente de preparación de pedidos. Los operarios del almacén reciben toda la información del pedido en la pantalla de sus gafas inteligentes. El principio en el que se basa se conoce como realidad aumentada, ya que los datos virtuales enriquecen la realidad de los empleados. Pick-by-Vision ofrece numerosas ventajas. Los empleados pueden trabajar de forma más eficiente, ya que tienen las dos manos libres. Esto les permite procesar más pedidos en menos tiempo. En un sector tan competitivo como el de la logística, esto puede proporcionar a una empresa una valiosa ventaja sobre la competencia. Pick-by-Vision también puede mejorar la sostenibilidad corporativa, ya que el sistema proporciona la información necesaria en formato digital, lo que genera menos residuos de papel.
La preparación inteligente de pedidos es una parte integral de la logística inteligente y de la Logística 4.0. Los operarios de almacén utilizan la tecnología digital para trabajar de forma más eficiente y fiable. En lugar de trabajar con albaranes o notas de entrega escritos a mano, reciben toda la información importante en el punto de uso mediante comandos de voz (Pick-by-Voice), pantallas LED (Pick-by-Light) o gafas inteligentes (Pick-by-Vision), o mediante otros métodos inteligentes de preparación de pedidos.
An error occurred in template Page._localizationsPopup.ftl
for Content with ID 270958. Show Details
Error rendering view The following has evaluated to null or missing:
==> locale?split("-")[1] [in 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/Page._localizationsPopup.ftl" at line 27, column 47]
----
Tip: It's the final [] step that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign country = "label.country." + ... [in 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/Page._localizationsPopup.ftl" at line 27, column 11]
----
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.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.GeneratedMethodAccessor139.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.GeneratedMethodAccessor139.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: freemarker.core.InvalidReferenceException: The following has evaluated to null or missing:
==> locale?split("-")[1] [in 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/Page._localizationsPopup.ftl" at line 27, column 47]
----
Tip: It's the final [] step that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign country = "label.country." + ... [in 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/Page._localizationsPopup.ftl" at line 27, column 11]
----
at freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:134)
at freemarker.core.EvalUtil.coerceModelToTextualCommon(EvalUtil.java:490)
at freemarker.core.EvalUtil.coerceModelToStringOrMarkup(EvalUtil.java:410)
at freemarker.core.AddConcatExpression._eval(AddConcatExpression.java:96)
at freemarker.core.AddConcatExpression._eval(AddConcatExpression.java:61)
at freemarker.core.Expression.eval(Expression.java:101)
at freemarker.core.Assignment.accept(Assignment.java:134)
at freemarker.core.Environment.visit(Environment.java:380)
at freemarker.core.IteratorBlock$IterationContext.executedNestedContentForCollOrSeqListing(IteratorBlock.java:291)
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.visit(Environment.java:350)
at freemarker.core.Environment.visit(Environment.java:350)
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)
... 187 more