Skip to main content
Level 2
September 20, 2022

AEM 6.5 Custom Servlet Not found

Hi everyone,

 

My problem is similar to this thread 解決済み: AEM 6.4 Servlet POST request not hitting servlet - Adobe Experience League Community - 252974 but my problem is when I do the request, I get a 404 error. 

Seems like it is not installed at all and maybe something wrong with my pom file so i really prefer some help.

This is my pom file:

 

<dependency>      
        <groupId>com.adobe.aem</groupId>       
        <artifactId>aem-sdk-api</artifactId>         
        <version>${aem.sdk.api}</version>  
        <scope>provided</scope>
</dependency>

<dependency>
    <groupId>com.adobe.acs</groupId>
    <artifactId>acs-aem-commons-content</artifactId>
    <version>5.3.4</version>
    <type>zip</type>
</dependency>
                 
<dependency>               
        <groupId>com.adobe.cq</groupId>              
        <artifactId>core.wcm.components.core</artifactId>              
        <version>${core.wcm.components.version}</version>          
</dependency>         
                 
<dependency>               
        <groupId>org.junit</groupId>                
        <artifactId>junit-bom</artifactId>            
        <version>5.8.2</version>           
        <type>pom</type>               
        <scope>import</scope>         
</dependency>
                 
<dependency>              
        <groupId>org.mockito</groupId>              
        <artifactId>mockito-core</artifactId>               
        <version>4.1.0</version>             
        <scope>test</scope>    
</dependency>
                 
<dependency>              
        <groupId>org.mockito</groupId>             
        <artifactId>mockito-junit-jupiter</artifactId>           
        <version>4.1.0</version>       
        <scope>test</scope>
</dependency>
                 
<dependency>              
        <groupId>junit-addons</groupId>              
        <artifactId>junit-addons</artifactId>            
        <version>1.4</version>             
        <scope>test</scope>           
</dependency>
                 
<dependency>           
        <groupId>io.wcm</groupId>          
        <artifactId>io.wcm.testing.aem-mock.junit5</artifactId>           
        <version>4.1.8</version>             
        <scope>test</scope>      
</dependency>
                 
<dependency>           
        <groupId>org.apache.sling</groupId>           
        <artifactId>org.apache.sling.testing.caconfig-mock-plugin</artifactId>        
        <version>1.3.6</version>       
</dependency>
                 
<dependency>            
        <groupId>com.adobe.cq</groupId>             
        <artifactId>core.wcm.components.testing.aem-mock-plugin</artifactId>             
        <version>${core.wcm.components.version}</version>             
        <scope>test</scope>         
</dependency>
                 
<dependency>       
        <groupId>uk.org.lidalia</groupId>           
        <artifactId>slf4j-test</artifactId>        
        <version>1.0.1</version>
        <scope>test</scope>     
</dependency>
 
<dependency>             
        <groupId>com.day.commons</groupId>   
        <artifactId>day.commons.datasource.poolservice</artifactId>            
        <version>1.0.10</version>  
        <scope>provided</scope>    
</dependency>
This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

5 replies

Saravanan_Dharmaraj
Community Advisor
Community Advisor
September 20, 2022

Could you check whether the bundle is in active state? is it path servlet or resource type servlet? Or a code snippet would help to identify 

Translate
Level 2
September 21, 2022

Hi!Thank you for your response!

 

The bundle is in active state and it is a path servlet.

code below

 

package com.adobe.training.core.servlets;

import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.SlingHttpServletResponse;
import org.apache.sling.jcr.api.SlingRepository;
import org.apache.sling.api.servlets.SlingAllMethodsServlet;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Reference;
import java.io.IOException;
import javax.jcr.Session;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import org.apache.sling.api.servlets.HttpConstants;
import org.osgi.framework.Constants;


@Component(
    service = Servlet.class,
    property = {
        Constants.SERVICE_DESCRIPTION + "=Video servlet",
                        "sling.servlet.paths=" + "/bin/damUpload/video",
                "sling.servlet.methods=" + HttpConstants.METHOD_POST
        })
public class SimplePostServlet extends SlingAllMethodsServlet {
//
}
Translate
Jagadeesh_Prakash
Community Advisor
Community Advisor
September 20, 2022

@zonghuiliu as part of your servlet class can you check in the bundle if the servlet is in satified state or in unsatified state. 

Translate
Level 2
September 21, 2022

Hi!Thank you for your response!

 

I'm not sure but seems like it is in unsatified state.

Could you please share the right way to confirm the state?

 

Translate