I am writing a small Spring application that consists of a model represented by a facade object called `service` and a JSP-based view. In between I have the usual Spring controllers and a converter that converts a string id to an object from the model. 

This converter uses the service object, which is `@Autowired`, to find the right model object from `service`. The problem is that whenever the converter accesses a method in `service` nothing happens. No errors or exceptions, it just continues and returns null. 

I have already checked whether `service` gets properly initialized or not and that doesn't seem to be the problem. While debugging i noticed that the program goes through `ThreadPoolExecutor` and stops there whenever i try to execute a method on `service`. This makes me assume that the problem is related to accessing `service` while it's locked. 

I have already tried to place the necessary code in a synchronized block but that doesn't help. Can anyone tell my why I can't access any methods from an `@Autowired` object in a Spring converter?

Here is the converter class for what it's worth:

```
public class IdToPublisherConverter implements Converter<String, Publisher>{

    @Autowired
    private MainService service;

    @Override
    public Publisher convert(String id) {
        return service.getPublisher(Long.getLong(id));
    }   
}

```

EDIT:

`MainService` is a facade object that provides an interface to get, add, update and remove my model data (`Game` objects and `Publisher`objects)

`service.getPublisher(id)` gets a `Publisher`object from `service` based on an id of type long the converter recieved from a JSP page. This method goes to the following method in `MainService`:

```
@Override
public Publisher getPublisher(long id) {
    Publisher publisher = repository.readPublisher(id);
    return publisher;
}

```

Which goes to:

```
private final Map<Long, Publisher> publishers;

...

@Override
public Publisher readPublisher(long id) {
    return publishers.get(id);
}

```