The protocol is designed so the specific server implementation should not matter. Sometimes you will run into quarks here and there (usually with collection classes or custom serialization), but for the most part, any data service implementation worth it's salt should be interchangeable without any modifications to the flex app, except for maybe the service config file.
but a question arise in my mind by ur reply,means the flex developer need not to work on java,Am i right??
It is usually common for teams with multiple developers to have a division of responsibilities between back-end (Java, PHP, .NET, etc) developers and front-end (HTML, Flex, Silverlight, etc.) developers. This makes it easier to divide up the work on a clear "boarder," so both sides can work in tandem with little interference.
That being said, it may be beneficial for front-end developers to have a little bit of flexibility to make minor changes to the back end if the project is not clearly defined ahead of time. And as always, the feedback loop between designers, front-end developers, and back-end developers, should be kept as short as possible to achieve the greatest flexibility.
Disclaimer: These are my own opinions based on how I work with my own team. Results may vary.