Wowza Community

Strange error when creating transcoder templates via REST API

Basically, what I want to do is to create a transcoder template with one encoder preset via REST API. So I made the request below:

curl -X POST \
  http://<server-ip>:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/<appName>/transcoder/templates \
  -H 'Content-Type: application/json' \
  -H 'cache-control: no-cache' \
  -d '{
  "deinterlace": false,
  "streamNameGroups": [
  ],
  "Overlays": [],
  "implementation": "default",
  "name": "Teste-Review.stream",
  "serverName": "_defaultServer_",
  "description": "Teste",
  "saveFieldList": [],
  "encodes": [
    {
      "followSource": false,
      "implementation": "default",
      "gpuid": -1,
      "profile": "baseline",
      "serverName": "_defaultServer_",
      "description": "Low quality",
      "audioCodec": "PassThru",
      "version": "1",
      "streamName": "mp4:${SourceStreamName}_Low",
      "Overlays": [
      	],
      "audioBitrate": "${SourceAudioBitrate}",
      "videoBitrate": "250000",
      "enable": true,
      "name": "LowQuality",
      "width": 704,
      "interval": 60,
      "fitMode": "match-source",
      "saveFieldList": [
      ],
      "crop": "0,0,0,0",
      "videoCodec": "H.264",
      "height": 480,
      "sourceRectangle": ""
    }
  ],
  "version": "1"
}'

The server responded with Status 201 Created and the following body:

<?xml version="1.0" encoding="UTF-8" ?>
<wmsResponse>
    <success>true</success>
    <message>Saved</message>
</wmsResponse>

So far so good. When I go to Wowza Streaming Engine Manager, however, things get strange.

As you can see in the first screenshot, it lists the created template. But when I click on it…

I have no idea what this is supposed to mean. And when I try to delete the template clicking on the trash bin it goes to the same screen. However, I can delete it just fine via the REST API. Strange behaviour. Naturally, no transcoding happens, as “Incoming Streams” only lists the original stream files source.

Full error:

Stack Trace Not+Found+%28404%29+-+Not+Found%0A%09at+org.restlet.resource.ClientResource.doError%28ClientResource.java%3A599%29%0A%09at+org.restlet.resource.ClientResource.handleInbound%28ClientResource.java%3A1165%29%0A%09at+org.restlet.resource.ClientResource.handle%28ClientResource.java%3A1060%29%0A%09at+org.restlet.resource.ClientResource.handle%28ClientResource.java%3A1035%29%0A%09at+org.restlet.resource.ClientResource.handle%28ClientResource.java%3A937%29%0A%09at+org.restlet.resource.ClientResource.get%28ClientResource.java%3A645%29%0A%09at+com.wowza.wms.rest.WMSClientResource.get%28Unknown+Source%29%0A%09at+com.wowza.wms.rest.ConfigBase.getObjectFromREST%28Unknown+Source%29%0A%09at+com.wowza.wms.rest.vhosts.applications.transcoder.TranscoderTemplateAppConfig.getObjectFromREST%28Unknown+Source%29%0A%09at+com.wowza.wms.webapp.transcoder.TranscoderTemplateModel.loadRESTObjects%28TranscoderTemplateModel.java%3A258%29%0A%09at+com.wowza.wms.webapp.ModelBase.loadUIData%28ModelBase.java%3A584%29%0A%09at+com.wowza.wms.webapp.transcoder.TranscoderTemplateModel.loadUIData%28TranscoderTemplateModel.java%3A276%29%0A%09at+com.wowza.wms.webapp.transcoder.TranscoderController.getTemplateSetup%28TranscoderController.java%3A218%29%0A%09at+com.wowza.wms.webapp.transcoder.TranscoderController.getTemplateSetup%28TranscoderController.java%3A204%29%0A%09at+sun.reflect.GeneratedMethodAccessor695.invoke%28Unknown+Source%29%0A%09at+sun.reflect.DelegatingMethodAccessorImpl.invoke%28DelegatingMethodAccessorImpl.java%3A43%29%0A%09at+java.lang.reflect.Method.invoke%28Method.java%3A498%29%0A%09at+org.springframework.web.method.support.InvocableHandlerMethod.invoke%28InvocableHandlerMethod.java%3A219%29%0A%09at+org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest%28InvocableHandlerMethod.java%3A132%29%0A%09at+org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle%28ServletInvocableHandlerMethod.java%3A104%29%0A%09at+org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod%28RequestMappingHandlerAdapter.java%3A745%29%0A%09at+org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal%28RequestMappingHandlerAdapter.java%3A686%29%0A%09at+org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle%28AbstractHandlerMethodAdapter.java%3A80%29%0A%09at+org.springframework.web.servlet.DispatcherServlet.doDispatch%28DispatcherServlet.java%3A925%29%0A%09at+org.springframework.web.servlet.DispatcherServlet.doService%28DispatcherServlet.java%3A856%29%0A%09at+org.springframework.web.servlet.FrameworkServlet.processRequest%28FrameworkServlet.java%3A936%29%0A%09at+org.springframework.web.servlet.FrameworkServlet.doGet%28FrameworkServlet.java%3A827%29%0A%09at+javax.servlet.http.HttpServlet.service%28HttpServlet.java%3A707%29%0A%09at+org.springframework.web.servlet.FrameworkServlet.service%28FrameworkServlet.java%3A812%29%0A%09at+javax.servlet.http.HttpServlet.service%28HttpServlet.java%3A820%29%0A%09at+net.winstone.core.ServletConfiguration.execute%28ServletConfiguration.java%3A270%29%0A%09at+net.winstone.core.SimpleRequestDispatcher.forward%28SimpleRequestDispatcher.java%3A290%29%0A%09at+net.winstone.core.SimpleRequestDispatcher.doFilter%28SimpleRequestDispatcher.java%3A332%29%0A%09at+com.wowza.wms.webapp.RequestLoggingFilter.doFilter%28RequestLoggingFilter.java%3A35%29%0A%09at+net.winstone.core.FilterConfiguration.execute%28FilterConfiguration.java%3A189%29%0A%09at+net.winstone.core.SimpleRequestDispatcher.doFilter%28SimpleRequestDispatcher.java%3A321%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A330%29%0A%09at+org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke%28FilterSecurityInterceptor.java%3A118%29%0A%09at+org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter%28FilterSecurityInterceptor.java%3A84%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A342%29%0A%09at+org.springframework.security.web.access.ExceptionTranslationFilter.doFilter%28ExceptionTranslationFilter.java%3A113%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A342%29%0A%09at+org.springframework.security.web.session.SessionManagementFilter.doFilter%28SessionManagementFilter.java%3A103%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A342%29%0A%09at+org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter%28AnonymousAuthenticationFilter.java%3A113%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A342%29%0A%09at+org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter%28SecurityContextHolderAwareRequestFilter.java%3A54%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A342%29%0A%09at+org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter%28RequestCacheAwareFilter.java%3A45%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A342%29%0A%09at+org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter%28BasicAuthenticationFilter.java%3A150%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A342%29%0A%09at+org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter%28AbstractAuthenticationProcessingFilter.java%3A183%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A342%29%0A%09at+org.springframework.security.web.authentication.logout.LogoutFilter.doFilter%28LogoutFilter.java%3A105%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A342%29%0A%09at+org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter%28SecurityContextPersistenceFilter.java%3A87%29%0A%09at+org.springframework.security.web.FilterChainProxy%24VirtualFilterChain.doFilter%28FilterChainProxy.java%3A342%29%0A%09at+org.springframework.security.web.FilterChainProxy.doFilterInternal%28FilterChainProxy.java%3A192%29%0A%09at+org.springframework.security.web.FilterChainProxy.doFilter%28FilterChainProxy.java%3A160%29%0A%09at+org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate%28DelegatingFilterProxy.java%3A343%29%0A%09at+org.springframework.web.filter.DelegatingFilterProxy.doFilter%28DelegatingFilterProxy.java%3A260%29%0A%09at+net.winstone.core.FilterConfiguration.execute%28FilterConfiguration.java%3A189%29%0A%09at+net.winstone.core.SimpleRequestDispatcher.doFilter%28SimpleRequestDispatcher.java%3A321%29%0A%09at+com.wowza.wms.webapp.Utf8Filter.doFilter%28Utf8Filter.java%3A30%29%0A%09at+net.winstone.core.FilterConfiguration.execute%28FilterConfiguration.java%3A189%29%0A%09at+net.winstone.core.SimpleRequestDispatcher.doFilter%28SimpleRequestDispatcher.java%3A321%29%0A%09at+net.winstone.core.SimpleRequestDispatcher.forward%28SimpleRequestDispatcher.java%3A288%29%0A%09at+net.winstone.core.listener.RequestHandlerThread.processRequest%28RequestHandlerThread.java%3A213%29%0A%09at+net.winstone.core.listener.RequestHandlerThread.run%28RequestHandlerThread.java%3A144%29%0A%09at+java.util.concurrent.Executors%24RunnableAdapter.call%28Executors.java%3A511%29%0A%09at+java.util.concurrent.FutureTask.run%28FutureTask.java%3A266%29%0A%09at+net.winstone.util.BoundedExecutorService%241.run%28BoundedExecutorService.java%3A81%29%0A%09at+java.util.concurrent.ThreadPoolExecutor.runWorker%28ThreadPoolExecutor.java%3A1142%29%0A%09at+java.util.concurrent.ThreadPoolExecutor%24Worker.run%28ThreadPoolExecutor.java%3A617%29%0A%09at+java.lang.Thread.run%28Thread.java%3A745%29%0A

Final observation: when I try to retrieve this particular template configuration via REST API, the server responds with 404 Not Found.

Sorry for the long question, but I’ve been trying to do this for a whole day without success. I don’t know if I messed up the JSON or what. Anyway, thanks in advance and hope any of you can help me.
Cheers

Taking a look for you to see if I can find the issue. I’ll post again soon @Danilo Souza. We typically do not debug in the forums due to limited access to test your files, but I will see if I can help.

This is not a common error, but can occur when your Wowza Streaming Engine software version is updated, but the browser’s cached memory still keeps information form the old Wowza version. Can you try these exact steps?

  1. Close your browser.

  2. Restart the WowzaStreamingEngine service on your server

  3. Open the browser and clear the browser’s cache memory.

  4. Login to the Wowza Manager UI and click on the Stream targets link

If the above steps don’t help, could you please provide us with a copy of your /conf, /logs and /manager/logs folders for further inspection? https://www.wowza.com/docs/how-to-create-a-compressed-zip-file-in-windows-os-x-and-linux

-then please submit a support ticket so we can find the issue. Thank you.

https://www.wowza.com/support/open-ticket

Sadly, it did not help. I’m preparing the files you requested and I’ll be sending a support ticket shortly. Thanks a lot for your help.