First: that rule is total nonsense. The count of fields is driven by the entities and objects you are modelling, so disrupting designs and distribute stuff into different classes often lowers clarity.
For the service stuff, there is an usable approch: Use inheritance and put all services into the base class, e.g.
public class Services4Xyz {
@Inject
protected Something something;
...
}
public class Xyz extends Services4Xyz {
private String myText;
void foo() {
something.doSomething(myText);
}
}
Anoother approach is, to group attributes into an object. With services that needs to be a bean:
// provided as a bean
public class Services4Xyz {
@Inject
protected Something something;
public Something getSomething() {
return something;
}
...
}
public class Xyz {
@Inject
private Services4Xyz services4Xyz;
private String myText;
void foo() {
services4Xyz.getSomething().doSomething(myText);
}
}